Apparatus and method for forming three-dimensional objects using linear solidification

ABSTRACT

An apparatus and method for making a three-dimensional object from a solidifiable material using a linear solidification device is shown and described. In certain examples, the linear solidification device includes a laser diode that projects light onto a scanning device, such as a rotating polygonal mirror or a linear scanning micromirror, which then deflects the light onto a photohardenable resin. As a result, the linear solidification device scans a line of solidification energy in a direction that is substantially orthogonal to the direction of travel of the laser diode. In other examples, the linear solidification device is a laser device array or light emitting diode array that extends in a direction substantially orthogonal to the direction of travel of the array.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a divisional of U.S. patent application Ser. No.13/774,355, filed on Feb. 22, 2013, which is a continuation-in-part ofU.S. patent application Ser. No. 13/534,638, filed on Jun. 27, 2012,which claims the benefit of U.S. Provisional Patent Application No.61/598,666, filed on Feb. 14, 2012 and U.S. Provisional PatentApplication No. 61/502,020, filed on Jun. 28, 2011. The entirety of eachof the foregoing applications is hereby incorporated by reference.

FIELD

The disclosure relates to an apparatus and method for manufacturingthree-dimensional objects, and more specifically, to an apparatus andmethod for using linear solidification to form such objects.

DESCRIPTION OF THE RELATED ART

Three-dimensional rapid prototyping and manufacturing allows for quickand accurate production of components at high accuracy. Machining stepsmay be reduced or eliminated using such techniques and certaincomponents may be functionally equivalent to their regular productioncounterparts depending on the materials used for production.

The components produced may range in size from small to large parts. Themanufacture of parts may be based on various technologies includingphoto-polymer hardening using light or laser curing methods. Secondarycuring may take place with exposure to, for example, ultraviolet (UV)light. A process to convert a computer aided design (CAD) data to a datamodel suitable for rapid manufacturing may be used to produce datasuitable for constructing the component. Then, a pattern generator maybe used to construct the part. An example of a pattern generator mayinclude the use of DLP (Digital Light Processing technology) from TexasInstruments®, SXRD™ (Silicon X-tal Reflective Display), LCD (LiquidCrystal Display), LCOS (Liquid Crystal on Silicon), DMD (digital mirrordevice), J-ILA from JVC, SLM (Spatial light modulator) or any type ofselective light modulation system.

Many of the foregoing devices are complex and involve numerous, verysmall, moving parts. For example, DMD devices involve thousands ofindividually controllable micromirrors. Laser based SLA systems requirelasers with a fine degree of controlled manipulability to trace objectcross-sections which may be linear, non-linear, or irregular in shape.These features of many known three-dimensional object manufacturingsystems have driven up the cost of such systems, making them unavailableto many consumers. Thus, a need has arisen for an apparatus and methodfor making three-dimensional objects using a linear solidificationprocess which addresses the foregoing issues.

BRIEF DESCRIPTION OF THE DRAWINGS

The disclosure will now be described, by way of example, with referenceto the accompanying drawings, in which:

FIG. 1 is a perspective view of a system for making a three-dimensionalobject from a solidifiable material in a closed housing configuration;

FIG. 2 is a perspective view of the system for making athree-dimensional object of FIG. 1 in an open housing configuration;

FIG. 3 is a depiction of an embodiment of a solidification substrateassembly and a linear solidification device for use in a system formaking a three-dimensional object with the linear solidification devicein a first position along the length of the solidification substrateassembly;

FIG. 4 is a depiction of the solidification substrate assembly andlinear solidification device of FIG. 3 with the linear solidificationdevice in a second position along the length of the solidificationsubstrate assembly;

FIG. 5A is a perspective view of the rear of a linear solidificationdevice comprising a solidification energy source and a rotating energydeflector;

FIG. 5B is a perspective view of the front of the linear solidificationdevice of FIG. 5B;

FIG. 5C is a schematic view of a first alternate version of the linearsolidification device of FIG. 5A in which the housing is removed andwhich includes a solidification energy synchronization sensor;

FIG. 5D is a schematic view of a second alternate version of the linearsolidification device of FIG. 5A in which the housing is removed andwhich includes dual solidification energy sources and a solidificationenergy sensor;

FIG. 6 is a side elevational view of a system for making athree-dimensional object from a solidifiable material, which comprisesthe solidification substrate assembly and linear solidification deviceof FIGS. 3 and 4;

FIG. 7 is an alternative embodiment of a solidification substrateassembly and linear solidification device for use in a system for makinga three-dimensional object from a solidifiable material;

FIG. 8 is an exploded assembly view of the embodiment of FIG. 7;

FIG. 9A is an exploded perspective view of a film assembly used in thesolidification substrate assembly of FIG. 7;

FIG. 9B is a side elevational view of the film assembly of FIG. 9A;

FIG. 9C is a perspective view of the film assembly of FIG. 9A in anassembled configuration;

FIG. 10 is a close-up cross-sectional view of the film assembly of FIG.7 taken along line 10-10 of FIG. 7 with the solidification substratebracket removed;

FIG. 11 is a perspective view of a movable substrate assembly used inthe solidification substrate assembly of FIG. 7;

FIG. 12 is a perspective view of a peeling member assembly used in thesolidification substrate assembly of FIG. 7;

FIG. 13 is a close-up side cross-sectional view of the solidificationsubstrate assembly of FIG. 7 taken along line 13-13 in FIG. 7;

FIG. 14 is a graphical depiction of three-dimensional object data foruse in illustrating a method of making a three-dimensional object usinga linear solidification device;

FIG. 15 is a graphical representation of sliced data representative ofthe three-dimensional object of FIG. 14;

FIG. 16 (a) is a graphical representation of object cross-section stripdata corresponding to one of the slices of a three-dimensional objectshown in FIG. 15;

FIG. 16( b) is a top plan view of a source of solidifiable materialcomprising a build envelope and lateral offset regions;

FIG. 16( c) is a top plan view of the source of solidifiable material ofFIG. 16( c) with the object cross-section strip data of FIG. 16( c)mapped onto the build envelope;

FIG. 16( d) is a table depicting exemplary sets of data strings whichcorrespond to the object cross-sectional strip data of FIG. 16( c);

FIG. 16( e) is an exemplary depiction of object cross-sectional stripdata mapped onto a build envelope used to illustrate a method of makingadjacent layers of a three-dimensional object using a linearsolidification device;

FIG. 16( f) is a table depicting exemplary sets of data stringscorresponding to an even layer of a three-dimensional object representedby the cross-sectional strip data of FIG. 16( e);

FIG. 16( g) is a table depicting exemplary sets of data stringscorresponding to an odd layer of a three-dimensional object representedby the cross-sectional string data of FIG. 16( f);

FIG. 17 is a perspective view of an alternate embodiment of asolidification substrate assembly and linear solidification device foruse in a system for making a three-dimensional object with the linearsolidification device in a first position along the length of thesolidification substrate assembly;

FIG. 18 is a perspective view of the embodiment of FIG. 17 with thelinear solidification device in a second position along the length ofthe solidification substrate assembly;

FIG. 19 is a schematic view of an alternate embodiment of a system formaking a three-dimensional object using a linear solidification device;and

FIG. 20A is a detailed view of a portion of the system for making athree-dimensional object of FIG. 19;

FIG. 20B is a detailed perspective view of a work table assembly andlinear solidification device of an alternate embodiment of the systemfor making a three-dimensional object of FIG. 19;

FIG. 20C is a detailed perspective view of the underside of the worktable assembly and linear solidification device of FIG. 20B in a flipped(bottom side up) orientation;

FIG. 20D is a cross-sectional, side view of a portion of the linearsolidification device and solidification substrate assembly of FIG. 20B;

FIG. 21 is a flow chart used to illustrate a method of making athree-dimensional object from a solidifiable material using a linearsolidification device;

FIG. 22 is a flow chart used to illustrate an alternative method ofmaking a three-dimensional object from a solidifiable material using alinear solidification device;

FIG. 23 is a flow chart used to illustrate the alternative method ofFIG. 22;

FIG. 24 is a graph depicting microcontroller output signals to asolidification energy source and a motor used to drive a rotating energydeflector and microcontroller input signals received from asolidification energy synchronizations sensor;

FIG. 25( a) is a view along the scanning (y) axis of a hemisphericaltest part used to adjust a motor movement parameter in a system formaking a three-dimensional object from a solidifiable material in aclosed housing configuration;

FIG. 25( b) is a view along the build (z) axis of the test part of FIG.25( a);

FIG. 26 is a flow chart used to illustrate a first method for providinga linear solidification device speed and/or energy variationcompensation algorithm;

FIG. 27 is a flow chart used to illustrate a second method for providinga linear solidification device speed and/or energy variationcompensation algorithm;

FIG. 28 is a flow chart used to illustrate a method of making athree-dimensional object from a solidifiable material using modifiedsolidification energy source event data to compensate for variations inlinear solidification device speed as a function of scanning axisposition;

FIG. 29 is a schematic depicting a build envelope with a plurality ofrectangular test parts used to provide a linear solidification devicespeed and/or energy variation algorithm;

FIG. 30 is a table depicting exemplary sets of data strings for twolinear solidification devices corresponding to object cross-sectionalstrip data of FIG. 16( c);

FIG. 31 is table depicting exemplary sets of data strings for two linearsolidification devices corresponding to an even layer of athree-dimensional object represented by the cross-sectional strip dataof FIG. 16( e);

FIG. 32 is a table depicting exemplary sets of data strings for twolinear solidification devices, the data strings corresponding to an oddlayer of a three-dimensional object represented by the cross-sectionalstring data of FIG. 16( f);

FIG. 33 is a perspective view of a portion of a work table assembly anda linear solidification device operatively connected to a vacuum bladefor use in a system for making at three-dimensional object;

FIG. 34 is a side cross-sectional view of a portion of FIG. 33;

FIG. 35 is a side cross-sectional view of the vacuum blade of FIG. 33relative to a working surface of a solidifiable material and an upperportion of a solidified object;

FIG. 36 is a perspective view of a portion of a work table assembly andtwo linear solidification devices operatively connected to a vacuumblade for system for making a three-dimensional object.

Like numerals refer to like parts in the drawings.

DETAILED DESCRIPTION

The Figures illustrate examples of an apparatus and method formanufacturing a three-dimensional object from a solidifiable material.Based on the foregoing, it is to be generally understood that thenomenclature used herein is simply for convenience and the terms used todescribe the invention should be given the broadest meaning by one ofordinary skill in the art.

The apparatuses and methods described herein are generally applicable toadditive manufacturing of three-dimensional objects, such as componentsor parts (discussed herein generally as objects), but may be used beyondthat scope for alternative applications. The system and methodsgenerally include a linear solidification device that appliessolidification energy to a solidifiable material, such as aphotohardenable resin. The linear solidification devices applysolidification energy in a generally—and preferably substantially—linearpattern across an exposed surface of the solidifiable material and alsomove in a direction other than the one defined by the length of thelinear pattern while applying solidification energy. In certainexamples, the linear solidification device includes a scanning devicethat deflects received solidification energy in a scanning pattern. Suchscanning devices include without limitation rotating polygonal mirrorsand laser scanning micromirrors.

In certain illustrative examples, the apparatuses and methods describedherein may include a solidification substrate against which asolidifiable material is solidified as an object is built from thesolidification material. The solidification substrate facilitates thecreation of a substantially planar surface of solidification materialwhich is exposed to energy provided by a linear solidification device.The substantially planar surface improves the accuracy of the buildprocess. In certain embodiments, as discussed below, the solidificationsubstrate rocks to facilitate the separation of solidified material fromthe solidification substrate. In certain other embodiments, one or morepeeling members is provided to separate the solidification substrateassembly from an object being built. In further embodiments, thesolidification substrate is a planar or curved substrate that translateswith the linear solidification device as it traverses the solidifiablematerial.

The system is generally used for manufacturing three-dimensional objectsfrom a solidifiable material and rapid prototyping. A linearsolidification device comprising a source of solidification energy (suchas a laser diode or LED array) creates a series of adjacent linearimages on a solidifiable material which may vary in accordance with theshape of the object being built as the device moves across the surfaceof the solidifiable material to selectively solidify it.

As discussed herein, a solidifiable material is a material that whensubjected to energy, wholly or partially hardens. This reaction tosolidification or partial solidification may be used as the basis forconstructing the three-dimensional object. Examples of a solidifiablematerial may include a polymerizable or cross-linkable material, aphotopolymer, a photo powder, a photo paste, or a photosensitivecomposite that contains any kind of ceramic based powder such asaluminum oxide or zirconium oxide or ytteria stabilized zirconium oxide,a curable silicone composition, silica based nano-particles ornano-composites. The solidifiable material may further include fillers.Moreover, the solidifiable material my take on a final form (e.g., afterexposure to the electromagnetic radiation) that may vary fromsemi-solids, solids, waxes, and crystalline solids. In one embodiment ofa photopolymer paste solidifiable material, a viscosity of between 10000cP (centipoises) and 150000 cp is preferred.

When discussing a photopolymerizable, photocurable, or solidifiablematerial, any material is meant, possibly comprising a resin andoptionally further components, which is solidifiable by means of supplyof stimulating energy such as electromagnetic radiation. Suitably, amaterial that is polymerizable and/or cross-linkable (i.e., curable) byelectromagnetic radiation (common wavelengths in use today include UVradiation and/or visible light) can be used as such material. In anexample, a material comprising a resin formed from at least oneethylenically unsaturated compound (including but not limited to(meth)acrylate monomers and polymers) and/or at least one epoxygroup-containing compound may be used. Suitable other components of thesolidifiable material include, for example, inorganic and/or organicfillers, coloring substances, viscose-controlling agents, etc., but arenot limited thereto.

When photopolymers are used as the solidifiable material, aphotoinitiator is typically provided. The photoinitiator absorbs lightand generates free radicals which start the polymerization and/orcrosslinking process. Suitable types of photoinitiators includemetallocenes, 1,2 di-ketones, acylphosphine oxides,benzyldimethyl-ketals, α-amino ketones, and α-hydroxy ketones. Examplesof suitable metallocenes include Bis(eta 5-2,4-cyclopenadien-1-yl)Bis[2,6-difluoro-3-(1H-pyrrol-1-yl)phenyl] titanium, such as Irgacure784, which is supplied by Ciba Specialty chemicals. Examples of suitable1,2 di-ketones include quinones such as camphorquinone. Examples ofsuitable acylphosphine oxides include bis acyl phosphine oxide (BAPO),which is supplied under the name Irgacure 819, and mono acyl phosphineoxide (MAPO) which is supplied under the name Darocur® TPO. BothIrgacure 819 and Darocur® TPO are supplied by Ciba Specialty Chemicals.Examples of suitable benzyldimethyl ketals include alpha,alpha-dimethoxy-alpha-phenylacetophenone, which is supplied under thename Irgacure 651. Suitable α-amino ketones include2-benzyl-2-(dimethylamino)-1-[4-(4-morpholinyl)phenyl]-1-butanone, whichis supplied under the name Irgacure 369. Suitable α-hydroxy ketonesinclude 1-hydroxy-cyclohexyl-phenyl-ketone, which is supplied under thename Irgacure 184 and a 50-50 (by weight) mixture of1-hydroxy-cyclohexyl-phenyl-ketone and benzophenone, which is suppliedunder the name Irgacure 500.

The linear solidification device may be configured in a number of ways.In certain examples, the linear solidification device progressivelyexposes portions of the solidifiable material to solidification energyin one direction (a scanning direction) as the device moves in anotherdirection. In other examples, a generally, or preferably substantially,linear pattern of solidification energy is applied in a single exposurealong one direction as the device moves in another direction. Thesolidification energy may comprise electromagnetic radiation. Theelectromagnetic radiation may include actinic light, visible orinvisible light, UV-radiation, IR-radiation, electron beam radiation,X-ray radiation, laser radiation, or the like. Moreover, while each typeof electromagnetic radiation in the electromagnetic spectrum may bediscussed generally, the disclosure is not limited to the specificexamples provided. Those of skill in the art are aware that variationson the type of electromagnetic radiation and the methods of generatingthe electromagnetic radiation may be determined based on the needs ofthe application.

Referring to FIGS. 1-6, a first system 40 for making a three-dimensionalobject is depicted. System 40 includes a solidification substrateassembly 62 (FIG. 2) and a linear solidification device 88 (FIGS. 3-5C).System 40 includes a housing 42 for supporting and enclosing thecomponents of system 40. Housing 42 includes a viewing window 44 that ismoveably disposed in a housing opening 49. Viewing window 44 allowsusers to observe an object as it is being built during an object buildoperation. In the example of FIGS. 1-6, viewing window 44 is mounted ona hinge 60 (FIG. 2), allowing the window 44 to be pivotally opened andclosed about the longitudinal axis of hinge 60, thereby providing accessto the built object once the build operation is complete.

Housing 42 also includes a lower compartment 52 (FIG. 2) for housing aphotopolymer resin container 48. Photopolymer resin container 48 ismounted on a sliding support assembly 50 that allows container 48 to beslidably inserted and removed from lower compartment 52. The slidingsupport assembly 50 provides a means for adding or removing photopolymerresin from container 48 or for replacing container 48. Lower compartmentdoor 46 (FIG. 1) removably secures sliding support assembly 50 withinlower compartment 52.

Work table assembly 55 comprises a work table 56 and solidificationsubstrate assembly 62. Work table 56 is disposed in the interior ofhousing 42 above the lower compartment 46 and includes opening 54 (FIG.2) through which object build platform 43 is movably disposed. Latch 58is provided to secure solidification substrate assembly 62 to work table56 during an object building process.

Build platform 43 is connected to an elevator assembly (not shown) whichmoves build platform 43 downward into resin container 48 during anobject build operation and upward out of resin container 48 after anobject build operation is complete. As indicated in FIG. 2, buildplatform 43 has a rest position in which it is elevated above work table56 to facilitate the removal of finished objects as well as the removalof any excess resin on platform 43. In certain illustrative examples,build platform 43 stops at periodic intervals, and linear solidificationdevice 88 supplies solidification energy to the exposed solidificationmaterial at an exposed solidifiable material surface with the buildplatform 43 at rest. In other examples, build platform 43 movescontinuously away from work table 56 as solidification energy issupplied to the solidifiable material.

Referring to FIG. 3, an object solidification and separation system isdepicted which includes a solidification substrate assembly 62 and alinear solidification device 88. Linear solidification device 88progressively applies solidification energy to a solidifiable materialin a first direction (y-direction) as it moves in another direction(x-direction) across the surface of a solidifiable material, such as aphotohardenable resin (not shown in figure). In preferred embodiments,linear solidification device 88 includes a linear scanning device, andsolidification energy is “scanned” in a scanning direction that definesa scanning axis (i.e., the y-axis) as the linear solidification device88 moves in the x-direction. Preferably, the linear solidificationdevice 88 is not itself moved in the y-direction as this occurs. Thesequential linear scans in the scanning axis direction may be referredto as “linear scanning operations” herein.

Linear solidification device 88 comprises a solidification energy source90, a scanning device, and a housing 96. In the embodiment depicted inFIG. 3, the scanning device is a rotating energy deflector 92. In otherexamples of a linear solidification device 88, the scanning device is alaser scanning micromirror that is used in place of rotating energydeflector 92. Thus, it should be understood throughout that a laserscanning micromirror may be used in place of a rotating energy deflector92 in the exemplary embodiments described herein.

Suitable laser scanning micromirrors include magnetically-actuated MOEMS(micro-opto-electromechanical systems) micromirrors supplied under thename LSCAN by Lemoptix SA of Switzerland. A linear scanning micromirrorcomprises a silicon chip with a fixed part and a movable mirror part.The mirror is electrically or magnetically actuated to tilt relative tothe fixed part to a degree that corresponds to the actuating signal. Asthe mirror tilts, received solidification energy is scanned viadeflection from the tilting mirror. Thus, the degree of tilt or tiltangle corresponds to the position along the scanning (y) axis at whichthe deflected solidification energy strikes the surface of thesolidifiable material.

In certain preferred examples, and as shown in FIG. 3, a lens 98 isprovided between the rotating energy deflector 92 and a bottom surfaceof housing 96 to focus deflected solidification energy and transmit ittoward the solidifiable material. In the example of FIG. 3, thesolidifiable material is underneath and in contact with rigid orsemi-rigid solidification substrate 68. In the example of FIG. 3, lens98 is preferably a flat field lens. In certain examples, the lens 98 isa flat field lens that is transparent to violet and ultravioletradiation. In additional examples, the lens 98 also has a focal distancethat is longer on the ends of the lens relative to the middle (referringto the y-axis scanning direction along which the lens length isoriented) to compensate for different solidification energy beam traveldistances from the rotating energy deflector 92 to the solidifiablematerial. In certain implementations, lens 98 includes ananti-reflective coating such that the coated lens transmits at least90%, preferably at least 92%, and more preferably at least 95% of theincident light having a wavelength ranging from about 380 nm to about420 nm. In one example, lens 98 transmits at least about 95% of theincident light having a wavelength of about 405 nm. Suitable coatingsinclude single layer, magnesium difluoride (MgF₂) coatings, includingARSL0001 MgF2 coatings supplied by Siltint Industries of the UnitedKingdom.

Housing 96 also includes a substantially linear opening 100 (e.g., aslit) through which light is projected to rigid or semi-rigidsolidification substrate 68 and onto the solidifiable material.

FIGS. 3 and 4 show housing 96 at first and second positions,respectively, along the length (x-axis) of solidification substrateassembly 62. In the embodiment of FIGS. 3-4, housing 96 moves in thex-direction, but not in the y-direction. Motor 76 is provided to drivehousing 96 across the surface of rigid or semi-rigid solidificationsubstrate 68 (and the surface of the solidifiable material lying beneathit) from one end of solidification substrate assembly 62 to the other inthe x-direction. In certain examples, motor 76 is a servo motor or astepper motor. In either case, motor 76 has a motor movement parameterassociated with it that corresponds to a degree of linear movement oflinear solidification device 88 in the x-axis direction. In certaincases the parameter is a number of motor steps corresponding to aparticular linear distance that linear solidification device 88 moves inthe x-axis direction. As housing 96 moves in the x-direction (the lengthdirection of solidification substrate assembly 62), solidificationenergy source 90 and rotating energy deflector 92 move therewith. Duringthis movement, solidification energy, preferably laser light, isperiodically or continuously projected from solidification energy source90 to rotating energy deflector 92. In one preferred embodiment,solidification energy source 90 is a laser diode that emits light in therange of 380 nm-420 nm. A range of 390 nm-410 nm is preferred, and arange of from 400 nm to about 410 nm is more preferred. The laser poweris preferably at least about 300 mW, more preferably at least about 400mW, and even more preferably, at least about 450 mW. At the same time,the laser power is preferably no more than about 700 mW, more preferablyno more than about 600 mW, and still more preferably no more than about550 mW. In one example, a 500 mW, 405 nm blue-light laser is used.Suitable blue light laser diodes include 405 nm, 500 mW laser diodessupplied by Sanyo.

Rotating energy deflector 92 deflects solidification energy that isincident upon it toward flat field lens 98. Rotating energy deflector 92preferably rotates in a rotation plane as linear solidification device88 moves in the length (x-axis) direction. In certain examples, therotation plane is substantially perpendicular to the direction in whichthe linear solidification device 88 moves (i.e., the rotation plane isthe y-z plane shown in FIGS. 3-4). In certain examples, rotating energydeflector 92 rotates at a substantially constant rotational speed. Inother examples, the linear solidification device 88 moves at asubstantially constant speed in the length (x-axis) direction. Infurther examples, the rotating energy deflector 92 rotates at asubstantially constant rotational speed and the linear solidificationdevice 88 moves in the length (x-axis) direction at a substantiallyconstant speed.

When solidification energy source 90 is a light source, rotating energydeflector 92 is preferably a rotating light deflector capable ofdeflecting visible or UV light. In one exemplary embodiment, rotatingenergy deflector 92 is a polygonal mirror having one or more facets 94a, b, c, etc. defined around its perimeter. In the example of FIG. 3,rotating energy deflector 92 is a hexagonal mirror having facets 94 a to94 f. Each facet 94 a-94 f has at least one rotational position, andpreferably several, at which it will be in optical communication withsolidification energy source 90 to receive light projected therefrom. Asthe rotating energy deflector 92 rotates, solidification energy (e.g.,visible or ultraviolet light) will be deflected along the length of eachfacet 94 a-f in succession. At any one time, one of the facets 94 a-94 fwill receive and deflect solidification energy. As the facet changes itsrotational position, the angle of incidence of the solidification energywith respect to the facet will change, altering the angle of deflection,and therefore, the y-axis location at which the deflected solidificationenergy strikes the solidification substrate 68 and the solidifiablematerial underneath it. Thus, each rotational position of rotatingenergy deflector 92 corresponds to a position along the scanning (y)axis at which solidification energy may be projected at a given time.However, for a given number of rotating energy deflector facets F, therewill be F rotational positions that each correspond to a particularposition along the scanning axis direction. As will be discussed ingreater detail below, one or more controllers or microcontrollers may beprovided to regulate the activation and deactivation of the buildplatform 43, solidification energy source 90, rotating energy deflector92, and motor 76 that drives the linear solidification device 88 acrossthe solidifiable material.

In certain examples, the maximum length of scan in the y-axis directionwill correspond to the full length of an individual facet 94 a-94 f.That is, as the light progressively impinges on the entire length of anyone facet 94 a-94 f, the deflected light will correspondingly complete afull scan length in the y-axis direction. The number of facets 94 a, 94b, etc. on the rotating energy deflector 92 will correspond to thenumber of y-axis scans that are performed for one complete revolution ofrotating energy deflector 92. In the case of a hexagonal mirror, sixy-axis scans will occur for every complete rotation of rotating energydeflector 92. For rotating energy deflectors that maintain a constantrotational direction (e.g., clockwise or counterclockwise), the scanswill be uni-directional along the y-axis. Put differently, as lighttransitions from one facet 94 a to another 94 b, the scan will return toits starting position in the y-axis, as opposed to scanning back in theopposite direction. However, other rotating energy deflectorconfigurations may be used including those in which the rotating energydeflector 92 rotates in two rotational directions to produce a “back andforth” scan in the y-axis direction.

It is useful to use the term “build envelope” to describe the maximumlength (in the x-direction) and maximum width (in the y-direction) inwhich solidification energy may be supplied to the solidifiablematerial. In the embodiment of FIGS. 3-4, the build envelope area willtypically be less than the area of solidification substrate 68 or thearea defined by the exposed and upward facing surface of solidifiablematerial lying underneath it. In the example of FIG. 3, the buildenvelope will comprise an x-dimension (length) that is less than orequal to the full distance that the solidification energy source 90 androtating energy deflector 92 can traverse in the x-direction. In somecases, the y-dimension (width) of the build envelope may be somewhatlonger than the length of lens 98 and housing opening 100 because lightprojected from flat field lens 98 and through housing opening 100 may beprojected outwardly from housing 96 in the y-axis direction at anon-orthogonal angle of incidence with respect to the exposed surface ofthe solidifiable material.

FIGS. 16( b) and (c) depict a top view of a region of solidifiablematerial which includes a build envelope 342. The build envelope definesthe maximum area of solidification, and therefore, the maximum area ofthe three-dimensional object in the x-y plane. As shown in FIGS. 16( b)and 16(c), in certain cases the linear solidification device 88 ismovable in the x-axis direction along a total distance that equals thesum of a build envelope 342 length distance L and two offset distances,δ_(L) and δ_(R). The offset distances δ_(L) and δ_(R) respectivelyrepresent the distance from the left end-of-travel (EOT) position oflinear solidification device 88 to the left-hand side build envelopeboundary 343 and the distance from the right-hand side EOT position tothe right-hand side build envelope boundary 345. In certain examples,the offset distances, δ_(L) and δ_(R) are provided to ensure that thelinear solidification device 88 has time to achieve a substantiallyconstant speed in the x-axis direction before any solidification ofsolidifiable material will begin (i.e., before build envelope 342 isreached). In certain examples, the movement of the linear solidificationdevice 88 at a constant x-axis speed avoids the necessity of directlymeasuring the x-axis position at any given moment because it allows amotor movement parameter for motor 76 to provide an indirect indicationof x-axis position. In one particular example suitable for servo andstepper motors, the motor movement parameter is a number of motor steps.In certain examples, δ_(L) and δ_(R) are equal.

In certain examples, as rotating energy deflector 92 rotates,solidification energy source 90 will selectively project light inaccordance with data that represents the object being built. At a givenlocation in the x-axis direction, some y-axis locations may besolidified and others may not, depending on the shape of the objectbeing built.

One way of selectively projecting light to the solidifiable material isto selectively activate the solidifiable energy source 90 depending onthe x-axis location of the linear solidification device and therotational position of the facet 94 a-f that is in optical communicationwith the solidification energy source 90. While each facet 94 a-94 fwill have a full range of locations along its length at whichsolidification energy may be received from solidification energy source90, it will not necessarily be the case that each such facet locationwill receive solidification energy during any individual scan performedby that facet. Thus, by (directly or indirectly) coordinating theactivation of solidification energy source with the rotational positionof a given facet 94 a-94 f, solidification energy can be selectivelyprovided to only those locations along the y-axis where solidificationis desired.

The number of linear scans that can be performed within a given lineardistance along the x-axis direction may depend on several variables,including the rotational speed of rotating energy deflector 92, thenumber of facets F on the rotating energy deflector 92, and the speed ofmovement of the linear solidification device 88 along the x-axisdirection. In general, as the speed of movement of the linearsolidification device 88 increases in the x-axis direction, the numberof linear scans per unit of x-axis length decreases. However, as thenumber of facets on the rotating energy deflector 92 increases or as therotational speed of the rotating energy deflector 92 increases, thenumber of linear scans per unit of x-axis length increases.

Thus, for a given build envelope distance L in units such asmillimeters, the maximum number of line scanning operations that can beperformed may be calculated as follows:

N _(max)=(L/S)*(RPM/60)*F  (1)

-   -   where, N_(max)=maximum number of line scanning operations in the        x-axis direction within the build envelope;        -   L=desired length of the build envelope in the x-axis            direction (mm);        -   S=speed of movement of solidification energy source in the            x-axis direction (mm/sec);        -   RPM=rotational frequency of rotating energy deflector            (revolutions/minute); and        -   F=number of facets on the rotating energy deflector.

Each linear scan can then be assigned a linear scan index n (which canalso be called a string index when sets of data strings are used asobject layer data) ranging from a value of 0 to N_(max)−1. Equation (1)can also be used to calculate an actual number of line scanningoperations needed for a given part length in the x-axis direction. Inthat case, L would be the desired length of the part in the x-axisdirection an N_(max) would be replaced by N, which would represent thetotal number of line scanning operations used to form the part.

When the linear solidification device is moving at a constant speed S inthe x-axis direction, a motor movement parameter such as a number ofmotor steps for motor 76 may be correlated to the build envelope lengthL and used to define a variable W which equals a number of motorsteps/L. The microcontroller unit can then use the number of motor stepsto indirectly determine the number of a linear scan (or string index asdescribed further herein) position of the linear solidification devicewithin the build envelope in accordance with the following equation:

scan index n=((number of steps from boundary)/(W)(S))*(RPM/60)*F  (2)

In equation (2), the number of steps from the boundary refers to thenumber of motor steps counted starting at build envelope boundary 343and moving from left to right or starting at build envelope boundary 345and moving from right to left. A particular three-dimensional objectlayer having a length may be formed by a number of linear scansperformed within build envelope 342.

In certain examples, the host computer will assign scan index numbers orstring data index numbers by scaling the part to the build envelope sizeand assigning a scan index number n based on the total number ofpossible scans N_(max) in the build envelope 342. The scan index numbersn will then be correlated to a number of motor steps as set forth inequation (2). This relationship depends, in part, on the accuracy of thevalue W which is the ratio of the number of steps required for thelinear solidification device 88 to traverse the build envelope length L(FIG. 16( b)) divided by L. As explained below, in some cases, W maydeviate from the value predicted by geometry of the mechanical devicesused to move the linear solidification device 88 (i.e., the valuepredicted by the gear ratio for motor 76, the rotational speed of motor76, and the pulley diameter of pulleys 82 a and 82 b). In that case, itmay be desirable to adjust the value of W. Methods of adjusting thevalue of W are described further below.

In another example, a flexible flat film mask is provided between linearsolidification device 88 and rigid or semi-rigid solidificationsubstrate 68. The flexible flat film mask has a plurality of variablytransparent imaging elements defining a matrix. Each imaging element maybe selectively made transparent or opaque by supplying energy to it.Examples of such flexible flat film masks include transparent organiclight emitting diode (OLED) screens and liquid crystal display (LCD)screens. The matrix is configured in a plurality of rows (1-n) arrangedalong the length (x-axis) direction of the solidification substrateassembly. Each row defines an x-axis location and has a plurality ofelements along the y-axis direction that may be selectively madetransparent or opaque to allow energy from solidification energy source90 to pass therethrough. Thus, at a specific x-axis location, thespecific members of a row that are activated to allow energytransmission will dictate which portions of the solidifiable material inthe y-axis direction will receive solidification energy while continuingto continuously supply energy from solidification energy source 90 torotating energy deflector 92.

As indicated previously, the systems for making a three-dimensionalobject described herein may include a control unit, such as amicrocontrol unit or microcontroller, which contains locally stored andexecuted programs for activating motors 76, 118 and moving buildplatform 43, as well as for selectively activating solidification energysource 90. In certain examples, the systems include a host computer thatprocesses three-dimensional object data into a format recognized by themicrocontroller unit and then transmits the data to the microcontrollerfor use by the microcontroller unit's locally stored and executedprograms. As used herein, the term “microcontroller” refers to ahigh-performance, programmable computer memory system used for specialtasks. In certain examples, the microcontrollers described hereininclude an integrated circuit chip having a microprocessor, a read onlymemory (ROM), interfaces for peripheral devices, timers, analog todigital and digital to analog converters, and possibly other functionalunits.

In certain examples, a linear solidification controller (not shown)selectively activates and deactivates linear solidification device 88,at least in part, based on the position of linear solidification device88 in the length (x-axis) direction. The position may be directlydetected or may be indirectly determined by other variables (e.g., anumber of motor steps). In one implementation discussed further below,an end of travel sensor 346 (FIGS. 16( b) and (c)) is used along with amotor movement parameter to indirectly determine the x-axis position.

In one implementation, the linear solidification controller is amicrocontroller or solidification energy source controller (not shown)which is operatively connected to solidification energy source 90 tochange the energization state of solidification energy source 90 byselectively activating and deactivating it. In additional examples, thecontroller selectively activates the solidification energy source, atleast in part, based on shape information about the three-dimensionalobject being built. In further examples, the controller selectivelyactivates the solidification energy source based on the position oflinear solidification device 88 in the length (x-axis) direction (orbased on another variable that correlates to the position such as anumber of motor steps for motor 76) and based on shape information aboutthe object being built which varies with the x-axis position. On a givenexposed surface of solidifiable material, the specific x, y locationsthat will receive the solidification energy will be dependent on they-axis profile of the object being built at the given x-axis location ofsolidification energy source 90 and rotating energy deflector 92. Infurther examples, the linear solidification controller selectivelyactivates imaging elements on a flat film mask to electively solidifydesired locations on the solidifiable material. In other examples, alaser scanning micromirror selectively deflects solidification energy ina linear patterns to perform a linear scanning operation.

In certain examples, the shape information about the object being builtis provided as three-dimensional object shape information whichmathematically defines the shape of the object in three-dimensionalspace. The three-dimensional object data is then sliced or subdividedinto object layer data preferably along a dimension that corresponds toa build axis. The build axis refers to an axis along which an object isprogressively built and in the examples described herein is typicallyreferred to as the “z-axis.” The object layer data may compriseinformation that mathematically defines the shape of the object in aplane orthogonal to the build axis. Thus, in one example wherein thebuild axis is referred to as the z-axis, each set of object data layermay comprise x and y coordinates that define the shape of the objectcross-section at a given z-axis position. Exemplary methods of providingand using object data to drive the solidification process are describedfurther below.

As mentioned previously, motor 76 is provided to translate housing 96across the surface of the solidifiable material in the x-axis direction.An exemplary apparatus for providing the translation is depicted inFIGS. 3 and 4. In accordance with the figures, housing 96 is connectedvia cross-bar 102 to two cam follower assemblies 104 a and 104 b spacedapart across the width (y-axis direction) of solidification substrateassembly 62. Motor 76 rotates shaft 78, which is connected at its ends80 a and 80 b to respective timing belts 86 a and 86 b. Each timing belt86 a and 86 b is connected to a corresponding pulley, 82 a and 82 b,which is rotatably mounted to a corresponding bracket 83 a and 83 bmounted on the stationary frame 64 of solidification substrate assembly62.

Cam follower assemblies 104 a and 104 b are each connected to acorresponding one of the timing belts 86 a and 86 b via correspondingbelt connectors 114 a and 114 b. Cam follower assemblies 104 a and 104 bare also connected to corresponding linear bearings 110 a and 110 bwhich slidably engage corresponding linear slides or rails 112 a and 112b. Linear slides 112 a and 112 b are attached to stationary frame 64 andare spaced apart from one another in the width (y-axis) direction ofsolidification substrate assembly 62. When motor 76 is energized, shaft78 rotates about its longitudinal axis, causing timing belts 86 a and 86b to circulate in an endless loop. The circulation of timing belts 86 aand 86 b causes cam follower assemblies 104 a and 104 b to translate inthe length (x-axis) direction of solidification substrate assembly 62,which in turn moves linear solidification device housing 96 in thelength (x-axis) direction. Thus, the concurrent activation of motor 76,rotating energy deflector 92 and solidification energy source 90, allowsfor the scanning of solidification energy in the width (y-axis)direction along an exposed surface of the solidifiable materialconcurrently with the translation of solidification energy source 90 androtating energy deflector 92 in the length (x-axis) direction.

A more detailed view of linear solidification device 88 is provided inFIGS. 5A and 5B, which show opposite sides of the device 88. Housing 96is a generally polygonal structure. As depicted in the figures, housing96 has an open face, but the face may be closed. Rotating energydeflector 92 is spaced apart from solidification energy source 90 inboth the height (z-axis) and width (y-axis) direction, and may beslightly offset from solidification energy source 90 in the length(x-axis) direction as well. Rotating energy deflector 92 is rotatablymounted to housing 96 so as to rotate substantially within a plane thatmay preferably be oriented substantially perpendicularly to the length(x-axis) direction (i.e., the y-z plane). Solidification energy sourceport 116 is provided for mounting solidification energy source (e.g., alaser diode) such that it is in optical communication with at least onefacet 94 a-94 f of rotating energy deflector 92 at one time. Asindicated previously, lens 98 is spaced apart and below from rotatingenergy deflector 92 in the height (z-axis) direction and is locatedabove housing light opening 100.

Motor 118 is mounted on a rear surface of housing 96 and is operativelyconnected to rotating energy deflector 92. Motor 118 is connected to asource of power (not shown). When motor 118 is energized, rotatingenergy deflector 92 rotates in the y-z plane, bringing the variousfacets 94 a-94 f sequentially into optical communication withsolidification energy source 90. A control unit (not shown) may also beprovided to selectively energize motor 118, solidification energy source90 and/or motor 76. Either or both of motors 76 and 118 may be stepperor servo motors. In certain examples, either or both of the motors 76and 118 are driven by continuous energy pulses. In the case of motor118, in certain preferred embodiments, it is driven by continuous energypulses such that the timing of each pulse corresponds to a fixedrotational position of a facet 94(a)-(f) of rotating energy deflector92. As the motor is pulsed, each of the facets 94(a)-(f) willsequentially come into optical communication with solidification energysource 90, and the particular facet that is in optical communicationwith solidification energy source 90 will have a fixed rotationalposition that corresponds to the timing of the pulse.

In certain implementations, the rotational position of rotating energydeflector 92 may repeatably correspond to the timing of each motorenergy pulse without being known by the operator. The fixed associationof the motor energy pulse and the rotational position of the facets 92a-92 f allows the motor pulse timing to be used to synchronize thetransmission of a synchronization solidification energy signal fromsolidification energy source 90 so that a synchronization solidificationenergy signal is issued for each facet 94(a)-(f) at some definedrotational position while it is in optical communication withsolidification energy source 90.

In certain implementations, it is desirable to provide a y-axis scanningspeed (i.e., a speed at which solidification energy moves along theexposed surface of the solidifiable material) that is significantlygreater than the x-axis speed at which the linear solidification device88 moves. Providing this disparity in y-axis and x-axis speeds helps tobetter ensure that the scanned energy pattern is linear and orthogonalto the x-axis direction, thereby reducing the likelihood of objectdistortion. In certain examples, the scanning speed in the y-axisdirection is at least about 1000 times, preferably at least about 1500times, more preferably at least about 2000 times, and still morepreferably at least about 2200 times the speed of movement of linearsolidification device 88 in the x-axis direction. In one example, linearsolidification device 88 moves at a speed of about 1 inch/second in thex-axis direction and the y-axis scanning speed is about 2400inches/second. Increasing the scanning speed relative to the speed ofmovement of linear solidification device 88 in the x-axis directionincreases the resolution of the scanning process by increasing thenumber of scan lines per unit of length in the x-axis direction.

The scanning speed (in number of scans per unit time) at whichsolidification energy is progressively applied to selected areas of asolidifiable resin in the width (y-axis) direction of solidificationsubstrate assembly 62 corresponds to the rotational speed of rotatingenergy deflector 92 multiplied by the number of facets 94 a-f. Incertain examples, the rotational speed is from about 1,000 to about10,000 rpm, preferably from about 2,000 to about 8,000 rpm, and morepreferably from about 3,000 to about 5,000 rpm.

Referring to FIG. 5C, and alternate embodiment of linear solidificationdevice 88 of FIGS. 5A and B is depicted. In FIG. 5C, housing 96 isremoved. As shown in the figure, solidification energy source 90 is inoptical communication with one facet 94(a)-(f) of rotating energydeflector 92 at any one time as rotating energy deflector 92 rotates inthe y-z plane (i.e., the plane orthogonal to the direction of movementof linear solidification device 88). In this embodiment, one or moresolidification energy focusing devices is provided betweensolidification energy source 90 and rotating energy deflector 92. In theexample of FIG. 5C, the one or more focusing devices comprises acollimator 320 and a cylindrical lens 322.

Collimator 320 is provided between solidification energy source 90 andcylindrical lens 322. Cylindrical lens 322 is provided betweencollimator 320 and rotating energy deflector 92. Collimator 320 is alsoa focusing lens and creates a round shaped beam. Cylindrical lens 322stretches the round-shaped beam into a more linear form to allow thebeam to decrease the area of impact against rotating energy deflector 92and more precisely fit the beam within the dimensions of one particularfacet 94(a)-(f). Thus, solidification energy transmitted fromsolidification energy source 90 passes through collimator 320 first andcylindrical lens 322 second before reaching a particular facet 94(a)-(f)of rotating energy deflector 92.

In certain preferred examples, collimator 320 and/or cylindrical lens322 transmit at least 90%, preferably at least 92%, and more preferablyat least 95% of the incident light having a wavelength ranging fromabout 380 nm to about 420 nm. In one example, collimator 320 andcylindrical lens 322 transmit at least about 95% of the incident lighthaving a wavelength of about 405 nm. In the same or other examples,solidification energy source 90 comprises a laser diode having a beamdivergence of at least about five (5) milliradians, more preferably atleast about six (6) milliradians, and sill more preferably at leastabout 6.5 milliradians. At the same time or in other examples, the beamdivergence is no more than about nine (9) milliradians, preferably nomore than about eight (8) milliradians, and still more preferably notmore than about 7.5 milliradians. In one example, the divergence isabout 7 milliradians. Collimator 320 is preferably configured with afocal length sufficient to collimate light having the foregoing beamdivergence values. Collimator 320 is preferably configured to receiveincident laser light having a “butterfly” shape and convert it into around beam for transmission to cylindrical lens 322.

In certain examples, collimator 320 has an effective focal length thatranges from about 4.0 mm to about 4.1 mm, preferably from about 4.0 mmto about 4.5 mm, and more preferably from about 4.01 mm to about 4.03mm. In one example, collimator 320 is a molded glass aspheric collimatorlens having an effective focal length of about 4.02 mm. One suchcollimator 320 is a Geltech™ anti-reflective coated, molded glassaspheric collimator lens supplied as part number 671TME-405 by Thorlabs,Inc. of Newton, N.J. This collimator is formed from ECO-550 glass, hasan effective focal length of 4.02 mm, and has a numerical aperture of0.60.

In certain examples, collimator 320 and/or cylindrical lens 322 areoptimized based on the specific wavelength and beam divergencecharacteristics of solidification energy source 90. In one example,collimator 320 and/or cylindrical lens 322 are formed from aborosilicate glass such as BK-7 optical glass. In certain preferredexamples, collimator 320 and/or cylindrical lens 322 are coated with ananti-reflective coating such that the coated collimator 320 and coatedcylindrical lens 322 transmit at least 90%, preferably at least 92%, andmore preferably at least 95% of the incident light having a wavelengthranging from about 380 nm to about 420 nm. Suitable anti-reflectivecoatings include magnesium difluoride (MgF₂) coatings such as theARSL0001 MgF2 coating supplied by Siltint Industries of the UnitedKingdom.

In certain examples of a linear solidification device 88, thesolidification energy defines a spot (which may or may not be circular)at the point of impingement on the solidifiable material. The angle ofincidence between the solidification energy and the solidifiablematerial will vary with the rotational position of a given facet94(a)-(f) relative to the solidification energy source 90. The spotdimensions and shape will also tend to vary with the angle of incidence.In some cases, this variation in spot size and/or spot dimensions canproduce uneven solidification patterns and degrade the accuracy of theobject building process. Thus, in certain examples, one or more lensesare provided between rotating energy deflector 92 and the solidifiablematerial to increase the uniformity of the spot size and/or dimensionsas the rotational position of rotating energy deflector 92 changes. Incertain examples, the one or more lenses is a flat field lens 98 (FIGS.5A and 5B). In other examples (FIG. 5C), the one or more lenses is anF-Theta lens (328 or 330). In other examples, and as also shown in FIG.5C, the one or more lenses is a pair of F-Theta lenses 328 and 330. TheF-Theta lenses 328 and 330 are spaced apart from one another and fromthe rotating energy deflector 92 along the z-axis direction (i.e., theaxis that is perpendicular to the scanning direction and the directionof movement of the linear solidification device 88). First F-Theta lens328 is positioned between second F-Theta lens 330 and rotating energydeflector 92. Second F-Theta lens 330 is positioned between firstF-Theta lens 328 and the solidifiable material (as well as between firstF-Theta lens 328 and light opening 100, not shown in FIGS. 5C-D).

First F-Theta lens 328 includes an incident face 334 and a transmissiveface 336. Incident face 334 receives deflected solidification energyfrom rotating energy deflector 92. Transmissive face 336 transmitssolidification energy from first F-Theta lens 328 to second F-Theta lens330. Similarly, second F-Theta lens 330 includes incident face 338 andtransmissive face 340. Incident face 338 receives solidification energytransmitted from transmissive face 336 of first F-Theta lens 338, andtransmissive face 340 transmits solidification energy from secondF-Theta lens 330 to housing light opening 100 (not shown in FIG. 5C) andto the solidifiable material.

In certain implementations of the linear solidification device of FIG.5C, first F-Theta lens 328 has a refractive index that is less than thatof second F-Theta lens 330. The relative difference in refractiveindices helps reduce laser beam scattering losses. At the same time orin other implementations, the radius of curvature of first F-Theta lenstransmissive face 336 is less than the radius of curvature of secondF-Theta lens transmissive face 340. Suitable pairs of F-Theta lenses arecommercially available and include F-Theta lenses supplied by KonicaMinolta and HP. In certain embodiments, the F-Theta lenses 328 and 330are preferably coated with an anti-reflective coating. Theanti-reflective coating is used to maximize the amount of selectedwavelengths of solidification energy that are transmitted throughF-Theta lenses 328 and 330. In one example, the anti-reflective coatingallows the coated F-Theta lenses 328 and 330 to transmit greater than 90percent of the incident solidification energy having a wavelengthbetween about 325 nm and 420 nm, preferably greater than 90 percent ofthe incident solidification energy having a wavelength between about 380nm and about 420 nm, more preferably greater than about 92 percent ofthe incident solidification energy having a wavelength between about 380nm and about 420 nm, and still more preferably greater than 95 percentof the incident solidification energy having a wavelength between about380 nm and about 420 nm. In one specific example, the coated F-thetalenses transmit at least about 95% of the incident light having awavelength of about 405 nm (i.e., blue laser light). In other preferredembodiments, collimator 320, and cylindrical lens 322 are also coatedwith the same anti-reflective coating. Suitable anti-reflective coatingsinclude magnesium difluoride (MgF2) coatings such as the ARSL001 coatingsupplied by Siltint Industries of the United Kingdom.

In certain examples, linear solidification device 88 may comprisemultiple solidification energy sources. In some implementations, thelinear solidification device 88 may include multiple solidificationenergy sources that provide solidification energy of the samewavelength, and the device 88 may transmit a single beam ofsolidification energy to the solidifiable material. In otherimplementations, the device 88 may include solidification energy sourcesof different wavelengths and selectively transmit solidification energyof only one of the wavelengths to a solidifiable material. Thisimplementation may be particularly useful when a three-dimensionalobject is built using multiple solidifiable materials each of whichsolidifies in response to solidification energy of different wavelengths(e.g., because their photoinitiators are activated by differentwavelengths of solidification energy).

Referring to FIG. 5D, an alternate version of linear solidificationdevice 88 (with the housing removed) is depicted in schematic form. Thelinear solidification device 88 is the same as the one depicted in FIG.5C with two exceptions. First, the linear solidification device 88 ofFIG. 5D includes two solidification energy sources 90 a and 90 b. In thespecific embodiment of FIG. 5D, solidification energy sources 90 a and90 b transmit solidification energy of substantially the samewavelength. In some cases, the use of such multiple solidificationenergy sources 90 a, 90 b is desirable in order to increase the power ofthe solidification energy transmitted to the solidifiable material. Thepower of the solidification energy can affect the rate ofsolidification, which in turn may limit the maximum speed of travel ofthe linear solidification device 88 in the x-axis direction. In order tosolidify, for example, a given volume of a solidifiable resin, thevolume must receive sufficient solidification energy (e.g., in Joules).The solidification energy received by a given volume of solidifiablematerial is a function of the power (e.g., in Watts) of thesolidification energy and the time of exposure of the volume ofsolidifiable material. As a result, as the power is reduced, the rate oftravel of the solidification energy device 88 must be reduced to ensurethat sufficient solidification energy is received at each location alongthe direction of travel (i.e., x-axis) of solidification energy device88. Put differently, at a desired solidification depth in the build axis(z-axis) direction, increasing the power of the solidification energyincreases the rate at which the linear solidification device 88 can betraversed in the x-axis direction, and hence, the speed of an objectbuild process.

The second difference between the solidification energy devices 88 ofFIGS. 5C and 5D is the inclusion of prisms 321 a and 321 b in FIG. 5D.The solidification energy device 88 of FIG. 5D is intended to combinesolidification energy from both sources 90 a and 90 b into a single beamfor delivery to the solidifiable material. The single beam preferablyhas a power that is at least 1.5 times, preferably at least 1.7 times,and more preferably at least 1.95 times the average power of theindividual solidification energy sources 90 a and 90 b. Eachsolidification energy source 90 a and 90 b transmits its respectivesolidification energy to a respective prism 321a and 32 lb. The prisms321 a and 321 b receive incident solidification energy at a first angleand deflect the energy to produce transmitted solidification energybeams at a second (different) angle that allows the individual beams tobe combined in a single beam. It is believed that the individual beamscombine ahead of cylindrical lens 322, after which the solidificationenergy is received by rotating energy deflector 92 and ultimatelytransmitted to the solidifiable material in the same manner describedpreviously with respect to FIG. 5C.

As mentioned previously, the linear solidification device 88 of FIGS. 5Cand 5D also includes a solidification energy sensor 324, which may be anoptical sensor. Suitable optical sensors include photodiodes. Oneexemplary photodiode that may be used is a 404 nm, 500 mW photodiodesupplied by Opnext under the part number HL40023MG.

Solidification energy sensor 324 generates a signal upon receipt ofsolidification energy. Mirror 332 is provided and is in opticalcommunication with rotating energy deflector 92 such that when eachfacet of rotating energy deflector 92 receives solidification energyfrom solidification energy source 90 while at a particular rotationalposition (or range of positions) in the y-z plane, the energy will bedeflected toward mirror 332 (as shown by the dashed lines). Similarly,when the scanning device used in linear solidification device 88 is alinear scanning micromirror, a particular tilt angle or range of tiltangles will cause received solidification energy to be deflected towardmirror 332. The solidification energy then reflects off of mirror 332along a path that is substantially parallel to the scanning axis(y-axis) between first F-Theta lens 328 and second F-Theta lens 330 tosensor 324. Sensor 324 may be operatively connected to a computer towhich it will transmit the signal generated upon receipt ofsolidification energy. The signal may be stored as data and/or used inprograms associated with a solidification energy source controller (notshown). An example of a line scanning synchronization method that makesuse of the generated sensor signal is described below.

In certain examples, sensor 324 is used to determine the beginning of aline scanning operation along the scanning axis (y-axis) direction.However, in certain cases using the solidification energy sourcesdescribed herein, the intensity of the solidification energy transmittedby solidification energy source 90 may be higher than desired, therebyreducing the sensitivity of sensor 324 due, at least in part, to thepresence of scattered and ambient light. As a result, in someimplementations a filter 326 is provided between sensor 324 and mirror332 along the path of travel of solidification energy from mirror 332 tosensor 324. Filter 326 preferably reduces the intensity ofelectromagnetic radiation received by sensor 324 without appreciablyaltering its wavelength(s). Thus, in one example filter 326 is a neutraldensity filter. One such suitable neutral density filter is a 16×neutral density filter supplied by Samy's Camera of Los Angeles, Calif.under the part number HDVND58. In certain implementations, sensor 324 isused to synchronize a timer that serves as a reference for linearscanning operations. In such cases, the exposure of sensor 324 toscattered or ambient light may cause synchronization errors. Thus,filter 326 is preferably configured to ensure that only directsolidification energy from solidification energy source 90 is receivedby sensor 324.

Referring again to FIG. 16( b), in certain implementations, linearsolidification device 88 is positioned within the build envelope 342such that the mirror 332 is located immediately proximate scanning-axisbuild envelope boundary 344. In such implementations, the receipt ofsolidification energy by sensor 324 (FIG. 5C) indicates that a linescanning operation may begin immediately thereafter because if thesolidification energy source 90 remains activated and if rotating energydeflector 92 continues to rotate, solidification energy will betransmitted to the solidifiable material at the scanning axis buildenvelope boundary 344 immediately after it is transmitted to mirror 332.Therefore, sensor 324 can be used to indicate the beginning of a linescanning operation for each facet 94(a)-94(f). As mentioned previously,when solidification energy source 90 remains activated while rotatingenergy deflector 92 completes a single revolution, a number of linearscanning operations will be completed in the scanning axis directionwhich equals the number of the rotating energy deflector's 92 facets94(a)-(f).

In those cases where sensor 324 is used to indicate the beginning of aline scanning operation, it is useful to briefly activate solidificationenergy source 90 at a specific moment at which the transmittedsolidification energy will be received by mirror 332. The briefactivation of solidification energy source may be coordinated orsynchronized with an actuating signal sent to the scanning device usedin linear solidification device 88. For example and as mentionedpreviously, in certain cases motor 118 is energized by a constantfrequency pulse, the timing of which corresponds to a fixed rotationalposition for the particular facet 94(a)-(f) that is in opticalcommunication with solidification energy source 90. Therefore, through aprocess of trial and error a lag time may be determined between theleading or trailing edge of the motor pulses and the receipt ofsolidification energy by sensor 324. More specifically, the source ofsolidification energy 90 can be selectively activated at a number oftimes relative to the leading or trailing edge of the pulse to determinewhich lag time results in the generation of a solidification energysensor signal by sensor 324. In one preferred embodiment, thesolidification energy source 90 is activated at or within a specifiedtime following the trailing edge of the energy pulse used to drive motor118.

In certain examples, it is preferable to dynamically adjust or calibratethe timing of the synchronization energy pulses. In accordance with suchexamples, the synchronizing energy pulses are activated at a dynamicallycalibrated time relative to an internal microprocessor clock (i.e., inthe microcontroller) without linking the synchronizing energy pulses tothe actuation pulses sent to motor 118 to rotate rotating energydeflector 92. One implementation of the dynamic calibration of thesynchronization energy pulse timing is as follows: When rotating energydeflector motor 118 is first activated during a part building process,one or more trial synchronization pulses are performed by a programresident in the microcontroller that activates solidification energysource 90 at one or more trial times with respect to the microprocessorclock. The initial trial time will be selected based on a lag timerelative to the actuating pulses sent to motor 118 which is believed tocause the transmitted solidification energy to strike the sensor 324.The trial times are progressively adjusted until the dynamic calibrationof the synchronization energy pulses is complete. The program residentin the microcontroller compares the time that the microcontroller sendsan output signal to activate the solidification energy source 90 to thetime that sensor 324 indicates that solidification energy has beenreceived. The program adjusts the timing of the output signal (relativeto the CPU clock) sent to solidification energy source 90 to theearliest possible time that results in the transmission of a signal fromsynchronization sensor 324, as this time indicates that thesolidification energy has been transmitted as close as possible to thetime at which the solidification energy contacts the sensor 324. Theultimate timing of the synchronization energy pulses determined by thisadjustment process is then saved and used in subsequent synchronizationoperations. As indicated previously, the timing of the pulses is definedrelative to the cycles of a CPU clock in the microprocessor to ensurethat they are repeatable. In certain cases, the use of this dynamicadjustment process to arrive at the synchronization energy pulse timingis more accurate than timing the synchronization energy pulses based ona fixed time relative to the motor 118 pulses, including because incertain cases the relationship between the motor 118 pulses and therotational position of rotating energy deflector 92 may fluctuate orvary despite the fact that the rotating energy deflector 92 rotates at asubstantially constant frequency.

The activation of the solidification energy source 90 relative to thepulses sent to motor 118 in accordance with one example is depicted inFIG. 24. Waveform 1100 represents the microcontroller output signal sentto the motor 118 to rotate mirror 92. Waveform 1102 represents themicrocontroller output signal sent to the solidification energy source90 to toggle the energization state solidification energy source. Therising edges of each cycle indicate that the solidification energysource is activated. The falling edges indicate that it is deactivated.The time differential between each falling edge of the motor pulsewaveform 1100 and rising edge of the solidification energy sourceactivation signal waveform 1102 is represented as Δ₁. In preferredembodiments, Δ₁ is maintained at a substantially consistent value frompulse-to-pulse of motor 118 to better ensure that the relationshipbetween the rotational position of each facet 94 a-f (FIG. 5B) and theactivation of a synchronizing pulse of solidification energy fromsolidification energy source 90 is substantially constant. However, inother examples, Δ₁ is an initial trial time that is only used as astarting point for dynamically calibrating the timing of synchronizationenergy pulses sent by source 90 relative to a microcontroller CPU clock.In such examples, once the dynamically calibrated time is determined, itis used for subsequent synchronization energy pulses at which point thesystem no longer uses the timing of the motor 118 actuation pulses todetermine when to send the synchronizing solidification energy pulses.

In certain cases, the sensor 324 may be unnecessary because a specifiedlag time relative to the energization pulses that drive motor 118 willreliably indicate when a line scanning operation is about to begin(assuming solidification energy source 90 remains activated). However,in some examples, the pulses cannot be used to reliably indicate when aline scanning operation is about to begin within the desired degree ofprecision. For example, the facets 94(a) to 94(f) of rotating energydeflector 92 may not be perfectly or consistently planar. In that case,the scanning (y) axis position of solidification energy may notcorrelate well with the rotational position of rotating energy deflector92 or the pulse waveform 1100 (FIG. 24) of rotary motor 118. Inaddition, heat generated by solidification energy source 90 can causeslight variations in the path of the solidification energy toward thesolidifiable material and the angle of incidence at which it strikes thesolidifiable material. Thus, sensor 324 assists in better determiningthe time at which a line scanning operation may begin (or is about tobegin if the solidification energy source 90 remains activated). This isparticularly helpful when object data is stored as time values becausethe time values can be reliably correlated to specific positions alongthe scanning axis direction relative to the scanning axis boundary 344of build envelope 342 (FIG. 16( b)). In certain examples, a timer is setto zero when sensor 324 generates a synchronization signal, and theobject data is specified as time values at which the energization stateof solidification energy source 90 is changed relative to the zero timevalue.

Referring again to FIG. 24, in certain examples, the timer is set tozero (initialized) when sensor 324 first indicates that it has receivedsolidification energy. Waveform 1104 represents signals generated bysensor 324 and transmitted to the microcontroller. In certain examples,the timer is initialized to zero on the rising edge of the sensor signalreceived by the microcontroller. For the first sensor signal pulse inFIG. 24, the rising edge is identified as 1104 a. Filter 326 (FIG. 3) isintended to remove ambient light or other sources of light other thansolidification energy reflected from rotating energy deflector 92.Otherwise, the microcontroller may prematurely initialize the CPU,causing the microcontroller to prematurely begin applying solidificationenergy to solidify the solidifiable material. In certain examples,filter 326 is selected and/or adjusted to ensure that the sensor 324generates an output signal for a period of time that is no longer thanthe time required for light reflected from rotating energy deflector 92to traverse the sensing length of sensor 324 when the rotating energydeflector 92 is rotating at its operating rotational frequency. Forexample, if sensing length of sensor 324 is 2 mm, the build envelopedistance in the scanning (y) axis direction is nine (9) inches (228.6mm), and the rotational frequency and number of facets of rotatingenergy deflector 92 yields a scan rate of 2000 lines/second, the timerequired for solidification energy to traverse the sensor's sensinglength will be 2 mm/((2000 lines/second)(228.6 mm)) or 4.4 microseconds.Thus, prior to performing an object building process, the sensor 324 maybe exposed to solidification energy from solidification energy source 90and rotating energy deflector 92. The output signals generated by sensor324 may be observed on an oscilloscope to determine of the time requiredfor solidification energy to traverse the sensor 324 is 4.4microseconds. If it is not, the filter 326 may be adjusted or replaceduntil the correct sensing time is observed.

As indicated previously, in certain examples solidifiable material suchas a photohardenable resin is provided under substantially rigid orsemi-rigid substrate 68 to receive solidification energy transmittedthrough substrate 68. Solidification substrate 68 is generally rigid orsemi-rigid and substantially permeable to the energy supplied by linearsolidification device 88. In certain examples, it is preferred that theenergy from linear solidification device 88 pass through solidificationsubstrate 68 without a significant diminution in transmitted energy or asignificant alteration of the energy spectrum transmitted to thesolidification material relative to the spectrum that is incident to theupper surface of solidification substrate 68. In the case where theenergy from solidification energy source 90 is light (includingnon-visible light such as UV light), solidification substrate 68 ispreferably substantially transparent and/or translucent to thewavelength(s) of light supplied by solidification energy source 90.

One example of a rigid or semi-rigid solidification substrate 68 is atranslucent float glass. Another example is a translucent plastic. Avariety of different float glasses and plastics may be used. Exemplaryplastics that may be used include transparent acrylic plastics suppliedby Evonik under the name Acrylite®. The term “translucent” is meant toindicate that substrate 68 is capable of transmitting the lightwavelengths (including non-visible light such as UV light) necessary tosolidify the solidifiable material and that the intensity of suchwavelengths is not significantly altered as the light passes throughsubstrate 68. In the case of photopolymers, a photoinitiator is commonlyprovided to start the polymerization/cross-linking process.Photoinitiators will have an absorption spectrum based on theirconcentration in the photopolymer. That spectrum corresponds to thewavelengths that must pass through solidification substrate 68 and whichmust be absorbed by the photoinitiator to initiate solidification. Inone example wherein solidification energy source 90 is a blue laserlight diode, Irgacure 819 and Irgacure 714 photoinitiators maypreferably be used.

As solidification energy is supplied to it, the exposed surface of thesolidifiable material will solidify in accordance with a generally—andpreferably substantially—linear pattern in the width (y-axis) direction,creating a thin linear region of material that adheres to solidificationsubstrate 68. As indicated previously, the downward movement of thebuild platform 43 (FIGS. 1 and 2) can cause the object to break ordistort if it remains adhered to solidification substrate 68. In certainexamples, the surface of rigid or semi-rigid solidification substrate 68which contacts the solidifiable material is coated with a material usedto reduce the adhesion of solidified material to substrate 68. Suitableadhesion reducing agents include Teflon® coatings. Non-stick coatingssuch as nanocoatings may also be used.

To minimize the likelihood of part distortion due to adhered solidifiedmaterial, in certain examples the solidified material is periodicallypeeled from solidification substrate assembly 62. In accordance withsuch examples, when the solidification energy source (which may beembodied as any linear solidification device, such as an LED array 308(FIG. 17) or linear solidification device 88 (FIGS. 3-5C)) moves in thex-axis direction, it is selectively activated to solidify asubstantially linear section of the solidifiable material extendingalong the scanning (y) axis direction. In addition, as solidificationenergy source 90 moves in the x-axis direction, the solidificationsubstrate assembly 62 is peeled from a solidified section ofsolidifiable material. The peeled solidified section of solidifiablematerial includes the substantially linear section of the solidifiablematerial that is solidified by the solidification energy source. Incertain examples, the solidified material is peeled from solidificationsubstrate 68. In other cases, the solidified material is peeled from afilm located between the solidification substrate 68 and thesolidifiable material.

In certain examples, this peeling operation comprises rocking the rigidor semi-rigid solidification substrate 68 with respect to thepartially-built three-dimensional object. In the embodiment of FIGS. 3-4solidification substrate 68 is curved along its length (i.e., whenviewing it along the y-axis direction, the solidification substrate 68has a slight curvature in the x-axis direction). In certain examples,the length of solidification substrate 68 is substantially parallel tothe direction of travel of linear solidification device 88. Oneexemplary curved profile of solidification substrate 68 is depicted inFIG. 6, which depicts solidification substrate assembly 62 in a rockedposition. In the embodiment of FIGS. 3-4, solidification substrate 68 isdisposed in a rocking frame 66. Rocking frame 66 includes first andsecond rocking frame sides 70 a and 70 b which are spaced apart alongthe width (y-axis) direction of solidification substrate assembly 62.First and second rocking frame sides 70 a and 70 b each have stationaryframe engagement surfaces 72 a and 72 b which are preferably also curvedalong their lengths (x-axis direction).

As shown in FIGS. 3 and 4, stationary frame 64 includes first and secondrocking frame engagement surfaces 74 a and 74 b which engage stationaryframe engagement surfaces 72 a and 72 b of rocking frame 66. In oneexemplary embodiment, the radius of curvature of solidificationsubstrate 68 and the radius of curvature of each stationary frameengagement surface 72 a and 72 b are substantially the same. In anotherexample, the upward facing surfaces of first and second rocking framesides 70 a and 70 b are curved and may have a radius of curvaturesubstantially the same as that of rigid or semi-rigid solidificationsubstrate 68. The engagement of stationary frame engagement surfaces 72a/72 b with corresponding rocking frame engagement surfaces 74 a and 74b allows rocking frame 66 to rock with respect to stationary frame 64 ascam followers 106 a and 106 b traverse the length of first and secondrocking frame sides 70 a and 70 b.

As mentioned previously, cam follower assemblies 104 a and 104 b convertthe motion of timing belts 86 a and 86 b into the linear motion oflinear solidification device 88 in the length (x-axis) direction ofsolidification substrate assembly 62. Referring to FIGS. 3 and 4, camfollower assemblies 104 a and 104 b include cam followers 106 a and 106b, each of which are depicted as a pair of rollers. Cam followers 106 aand 106 b engage upper surfaces of rocking frame sides 70 a and 70 b aslinear solidification device 88 translates in the x-axis direction. Theengagement of cam followers 106 a and 106 b with the upper surfaces ofrocking frame sides 70 a and 70 b applies a downward force to sides 70 aand 70 b, causing them to rock. This in turn causes solidificationsubstrate 68 to rock, which peels it from solidified material adhered toit, as best seen in FIG. 6 (which also depicts solidifiable materialcontainer 48 that is not shown in FIGS. 3-4). It should be noted that inthree-dimensional object manufacturing systems that use patterngenerators which simultaneously project solidification energy in bothbuild envelope directions (x and y), it is generally undesirable to haveany curvature in a solidification substrate, as such curvature canresult in image distortion. However, in certain of the linearsolidification processes described herein, such image distortion isminimized or eliminated because solidification energy is incident alonga substantially flat linear path of small thickness. For example, assolidification substrate 68 is traversed in the width (y-axis) directionat a particular location along its length (x-axis), it is substantiallyflat.

Referring to FIGS. 7-13, an alternate embodiment of an apparatus formaking a three-dimensional linear solidification device is depicted.Like numerals refer to like parts in the previous embodiment. Theapparatus includes a solidification substrate assembly 62 and a linearsolidification device 88. The linear solidification device 88 is alinear scanning device that includes the same components and operates inthe same manner as described previously with respect to FIGS. 3-6.However, solidification substrate assembly 62 is configured differently.In this embodiment, solidification substrate 68 is provided as part of amoving substrate assembly 212 that moves across the solidifiablematerial in the length (x-axis) direction of solidification substrateassembly 62 as linear solidification device 88 moves in the samedirection. In contrast, solidification substrate 68 remains stationaryin the embodiment of FIGS. 3-6. In addition, the embodiment of FIGS.7-13 includes a film assembly 205. Film assembly 205 remains stationaryas solidification substrate 68 moves. Film assembly 205 includes a film224 (not visible in FIGS. 7 and 8) which is positioned beneathsolidification substrate 68 in the height (z-axis) direction. Thesolidifiable material is located beneath film 224 and solidifies incontact with it, instead of solidifying directly in contact withsolidification substrate 68, as in FIGS. 3-6.

As with the embodiment of FIGS. 1-6, in the embodiment to of FIGS. 7-13a flexible film mask with a matrix of variably transparent imagingelements (e.g., LCD or transparent OLED) that can be selectively madetransparent or opaque can be provided in lieu of a linear scanningdevice, thereby allowing solidification energy to be selectivelyprovided to the solidifiable material in the y-axis direction whilecontinually supplying solidification energy from solidification energysource 90 to rotating energy deflector 92. In one example, the flexiblefilm is provided on top of rigid or semi-rigid solidification substrate68 and moves with it as substrate 68 moves along the length (x-axis)direction of solidification substrate assembly 62.

As best seen in FIGS. 9A-C, film assembly 205 comprises one or moreframes, which in the embodiment of FIGS. 9A-9C includes an inner frame206 and an outer frame 220. As shown in FIG. 10 (in which bracket 238 bis removed), film 224 has a central portion (FIG. 9C) that is disposedin the interior of inner frame 206. Film 224 also has an innerperipheral portion disposed between the lower edge 238 of inner frame206 and the lower edge 236 of outer frame 220. An outer peripheralportion of film 224 is sandwiched between an outwardly projecting lip230 formed on inner frame 206 and an upper surface 234 formed on outerframe 220. Film 224 is preferably stretched tautly and its centralportion is positioned underneath rigid or semi-rigid solidificationsubstrate 68. When in use during an object building operation, rigid orsemi-rigid solidification substrate 68 applies a downward force on film224 as substrate 68 moves in the length (x-axis) direction, helping toplanarize the exposed surface of the solidifiable material.

Film 224 is preferably a homopolymer or copolymer formed fromethylenically unsaturated, halogenated monomers. Fluoropolymers arepreferred. Examples of suitable materials for protective film 224include polyvinylidene fluoride (PVDF), ethylenchlorotrifluoroethylene(ECTFE), ethylenetetrafluoroethylene (ETFE), polytetrafluoroethylene(PTFE), perfluoroalkoxy (PFA), and modified fluoroalkoxy (a copolymer oftetrafluoroethylene and perfluoromethylvinylether, also known as MFA).Examples of suitable film 224 materials include PVDF films sold underthe Kynar® name by Arkema, ECTFE films sold under the Halar® name bySolvaySolexis, ETFE films sold under the Tefzel® name by DuPont, PFAfilms sold under the Teflon®-PFA name by DuPont, and MFA films soldunder the name Nowofol. MFA and Teflon® films are preferred.

As best seen in FIG. 7, motor 76 is again provided and is operativelyconnected to linear solidification device 88. However, motor 76 is alsooperatively connected to solidification substrate 68 such that whenmotor 76 is energized, shaft 78 rotates causing linear solidificationdevice 88 and solidification substrate 68 to translate in the length(x-axis) direction.

FIG. 11 is a perspective view of moving substrate assembly 212. As shownin FIGS. 7, 8 and 11, a pair of brackets 238 a and 238 b connects rigidor semi-rigid solidification substrate 68 to timing belts 86 a and 86 b.Brackets 238 a and 238 b are spaced apart from one another across thewidth (y-axis) or scanning axis direction of solidification substrate68. Each bracket 238 a and 238 b includes a respective vertical panel,250 a and 250 b, and a respective horizontal panel 214 a and 214 b (FIG.11). Vertical panels 250 a and 250 b are each connected to a respectiveend of rigid or semi-rigid solidification substrate 68 and to arespective horizontal panel 214 a and 214 b. Vertical panels 250 a and250 b may be separately formed and then connected to their respectivehorizontal panels 214 a and 214 b or may be formed integrally therewith.Rigid or semi-rigid solidification substrate 68 is preferablyconstructed of glass or hard plastic. In one example, substrate 68 isconstructed of a rigid or semi-rigid transparent acrylic polymer. Rigidor semi-rigid solidification substrate 68 includes a first upper surface268 that faces linear solidification device 88 and a second lowersurface 272 that faces film 224 and the solidifiable material.

Timing belts 86 a and 86 b are used to move rigid or semi-rigidsolidification substrate 68 from a first position to a second positionin the length (x-axis) direction with respect to stationary frame 64,film assembly 205, and the build envelope (total exposable area) of thesolidifiable material lying underneath film assembly 205. Timing belts86 a and 86 b are connected to respective pulleys 82 a and 82 b at oneend and to respective ends 80 a and 80 b of motor drive shaft 78 atanother end (FIG. 7).

As best seen in FIGS. 7 and 8, moving substrate assembly brackets 238 aand 238 b are connected to their respective timing belts 86 a and 86 bon an upper surface of horizontal panels 214 a and 214 b and torespective linear bearings 110 a and 110 b (shown in FIG. 8) on a lowersurface of horizontal panels 214 a and 214 b. Linear bearings 110 a and110 b slidingly engage corresponding linear rails 112 a and 112 b tofacilitate the sliding movement of rigid or semi-rigid solidificationsubstrate 68 along the length (x-axis direction) of solidificationsubstrate assembly 62. Thus, as motor 76 operates, each bracket 238 aand 238 b slides along its respective linear rail 112 a and 112 bcausing rigid or semi-rigid solidification substrate 68 to move alongthe length L (x-axis direction) of solidification substrate assembly 62.

As best seen in FIGS. 9A-C, in one example, outer frame 220 of filmassembly 205 is a generally rigid and rectangular structure shaped tocooperatively engage inner frame 206. Inner frame 206 is a generallyrigid and rectangular structure which includes an upper lip 230 (FIGS.10 and 13) that projects outwardly around the perimeter of inner frame206. Outer frame 220 fits underneath upper lip 230. In certain examples,the outer edge of lip 230 and the outer perimeter of outer frame 220 aresubstantially flush with one another and define a substantiallycontinuous outer surface, as illustrated in FIG. 10.

Referring to FIG. 10, outer frame 220 and inner frame 206 are preferablysecured to minimize the likelihood of resin leakage through inter-framegap G₂ and the area between lip 230 of inner frame 206 and the uppermost surface 234 of outer frame 220. Numerous methods of minimizing oreliminating such leakage may be provided. In one example, as shown inFIG. 10, film 224 is stretched between inner and outer frames 206 and220, so that an inner peripheral portion of film 224 is located in gapG₂, and so that an outer peripheral portion of film 224 is sandwichedbetween inner frame lip 230 and the upper most surface of outer frame220. In addition, through-holes 216 (FIG. 9A) formed on the uppersurface of upper lip 230 are alignable with complementary holes 222(FIG. 9A) formed on the upper surface of outer frame 220, allowingfasteners such as screws, bolts, etc. to secure outer frame 220 to innerframe 206. Thus, in certain examples, the fasteners are selected tominimize the amount of leakage in the area between inner frame lip 230and the upper most surface of outer frame 220. In other examples,portions of gap G₂ may be filled with a suitable resin blocking agentsuch as a cured resin. Suitable cured resins include silicones andepoxies.

Together, film 224, outer frame 220, and inner frame 206 define a filmassembly 205 that is securable to stationary frame 64. In certainembodiments, it is contemplated that film assembly 205 will be replacedperiodically due to the stress on film 224. Thus, film assembly 205 ispreferably releasably secured to stationary frame 64 to facilitatereplacement of film assembly 205.

In certain embodiments, film 224 is configured to provide a relievedarea that reduces or minimizes the likelihood of vacuum formationbetween film 224 and rigid or semi-rigid solidification substrate 68. Insuch embodiments, a portion of film 224 includes a relieved area (notshown) defined by microtextures or grooves in its upper surface (facingrigid or semi-rigid solidification substrate 68). The relieved area liesbeneath rigid or semi-rigid solidification substrate 68 while alsoextending beyond the perimeter of rigid or semi-rigid solidificationsubstrate 68, preferably in the width (y-axis) direction. In certainexamples, film assembly 205 has a width in the y-axis direction (FIG. 7)which is longer than the width (in the y-axis direction) of rigid orsemi-rigid solidification substrate 68. As shown in FIG. 10, thevariation in width creates a gap G₁ between the edge of rigid orsemi-rigid solidification substrate 68 and the inner surface of innerframe 206, creating a leak path 232 from the atmosphere to the portionof the relieved area of film 224 lying underneath and in facingopposition to rigid or semi-rigid solidification substrate 68, therebyminimizing the likelihood of vacuum formation between film 224 and rigidor semi-rigid solidification substrate 68. In the embodiment of FIG. 10,gap G₁ creates a leak path from the atmosphere to the film relieved areathat is generally in the z-direction (i.e., substantially parallel tothe direction of movement of build platform 43 and to the surface areaof film 224). However, other leak path orientations are possible, suchas one that is generally in the x-y plane. Film assembly 205 is attachedto the underside of stationary frame 64 via fasteners connected to frame64 and outwardly projecting lip 230 of inner frame 206 (see FIG. 10).

Referring to FIGS. 7, 8, 12, and 13, solidification substrate assembly62 includes a peeling member assembly 208 (FIGS. 8, 12) having at leastone film peeling member, which in the depicted embodiment is two filmpeeling members 204 a and 204 b. Film peeling members 204 a and 204 bare generally elongated rigid members which are spaced apart from oneanother along the length (x-axis) direction of solidification substrateassembly 62 and on opposite sides of rigid or semi-rigid solidificationsubstrate 68.

In one preferred embodiment, film peeling members 204 a and 204 b areoperatively connected to rigid or semi-rigid solidification substrate 68to move in a coordinated fashion with rigid or semi-rigid solidificationsubstrate 68. One exemplary apparatus for facilitating this movement isdepicted in FIGS. 8 and 12. Each film peeling member 204 a and 204 b isconnected to an opposite side of two brackets 210 a and 210 b. Brackets210 a and 210 b are spaced apart along the width (y-axis) direction ofsolidification substrate assembly 62 while peeling members 204 a and 204b are spaced apart along the length (x-axis) direction of solidificationsubstrate assembly 62.

Bracket 210 a has an upper surface with connectors 252 a and 254 a (FIG.12) which are configured for connection to complementary connectors 240a and 248 a (FIG. 11) formed in horizontal panel 214 a of solidificationsubstrate assembly bracket 238 a. Correspondingly, bracket 210 b has anupper surface with connectors 252 b and 254 b (FIG. 12) which areconfigured for connection to complementary connectors 240 b and 248 b(FIG. 11) formed in horizontal panel 214 b of solidification substrateassembly bracket 210 b. Connectors 252 a/b and 254 a/b may be male orfemale, threaded or unthreaded. Similarly, complementary connectors 240a/248 a and 240 b/248 b may be male or female, threaded or unthreaded.In FIG. 12, connectors 252 a/b and 254 a/b are male connectors suitablefor insertion into corresponding female connectors (e.g., threaded orunthreaded holes) 240 a/b and 248 a/b.

The connections between brackets 210 a/b and 238 a/b allow film peelingmembers 204 a and 204 b to move in coordination with rigid or semi-rigidsolidification substrate 68 as it moves along the length (x-axis)direction of solidification substrate assembly 62. Peeling members 204 aand 204 b are preferably maintained at a fixed distance relative torigid or semi-rigid solidification substrate 68. As best seen in FIG.13, rigid or semi-rigid solidification substrate assembly 62 ispreferably configured to maintain the upper surface 268 of rigid orsemi-rigid solidification substrate 68 beneath inner frame 206 and outerframe 220 of film assembly 205. The lower surface 272 of rigid orsemi-rigid solidification substrate 68 is in abutting engagement withfilm 224, which facilitates the creation of a substantially planarsurface of solidifiable material to which solidification energy issupplied. As shown in FIG. 13, an inner peripheral portion of film 224is connected to film assembly 205 at a height that is above the heightof lower-most surface 272 of rigid or semi-rigid solidificationsubstrate 68. Thus, the portion of film 224 which engages lower-mostsurface 272 of rigid or semi-rigid solidification substrate 68 remainsbelow the film frame assembly 205 defined by inner film frame 206 andouter film frame 220. As best seen in FIG. 13, film assembly 205 isattached to the underside of stationary frame 64 via fasteners 280 (onlyone of which is visible in FIG. 13) connected to stationary frame 64 andoutwardly projecting lip 230 of inner frame 206.

Referring again to FIG. 13, rigid or semi-rigid solidification substrate68 also preferably has a beveled edge 266. Upper substrate surface 268is positioned proximate inner and outer film frames 206 and 220 and isdisposed between lower substrate surface 272 and inner and outer filmframes 206 and 220. As illustrated in the figure, in certain examples,upper substrate surface 268 has a surface area greater than the surfacearea of lower substrate surface 272. The use of a beveled edge 266 andan upper surface 268 with a surface area greater than that of lowersurface 272 improves the ability of substrate 68 to slide along film 224as substrate 68 moves relative to film 224 and frames 206 and 220. Asshown in FIG. 13, when viewed in cross-section, lower surface 272 has asubstantially flat region 264 disposed inward of beveled edge 266.

In certain embodiments that include a beveled edge such as edge 266,steps are taken to reduce the likelihood of image distortion that curvedsubstrate geometries may cause. In the embodiment of FIG. 13, linearsolidification device is preferably positioned inward of beveled edge266 to avoid such distortion. Thus, in the example of FIG. 13,solidification energy is received by substantially flat surface 270 andtransmitted from a substantially flat lower surface 272. In certainpreferred examples, no solidification energy is transmitted from bevelededge 266 to the solidifiable material beneath film 224.

In FIGS. 1-4, the three-dimensional object is progressively built in avertically upward (z-axis) direction by moving build platform 43progressively downward into resin container 48 (FIG. 2). However, otherbuild orientations and directions may be used. FIGS. 19-20 depictanother system 350 for making a three-dimensional object 316 from asolidifiable material 302. FIG. 2 depicts system 350 with build platform354 in one position relative to rigid or semi-rigid solidificationsubstrate 68. In FIG. 19, recently solidified material is adhered torigid or semi-rigid solidification substrate 68. Solidifiable material352 is of the type described previously for the embodiment of FIGS. 1-4.In system 350, build platform 354 is suspended on a support 356 that isattached to an elevator 358. Elevator 358 progressively moves buildplatform 354 in a vertically upward direction during an object buildingoperation.

Linear solidification device 88 is positioned underneath rigid orsemi-rigid solidification substrate 68 and moves in the length (x-axis)direction to solidify solidifiable material 352. As best seen in FIG.20A, linear solidification device 88 is constructed in substantially thesame manner as in the previous embodiments. However, it is oriented in avertically (z-axis) opposite direction relative to the earlierembodiments and may also be embodied as an LED array or a laser diodewith a laser scanning micromirror. Thus, lens 98 is located vertically(z-axis) above rotating energy deflector 92 and vertically (z-axis)below light opening 100 (FIGS. 5 a and 5 b). In FIG. 20A, thesolidification energy source 90, which is preferably a laser diode, isnot visible. However, it is positioned to direct solidification energyin the y-z plane toward rotating energy deflector 92 as rotating energydeflector 92 rotates. Thus, as linear solidification device 88translates in the x-direction, solidification energy is progressivelyscanned in the y-axis direction to selectively solidify certainlocations along a generally—and preferably substantially—linear scanningpath (as dictated by the shape of the three-dimensional object at agiven x-axis position). Whether a given y-axis location on thesolidifiable material will receive solidification energy depends onwhether solidification energy is being supplied by the solidificationenergy source 90 as the facet 94 a-94 f that is in optical communicationwith solidification energy light source reaches the rotational positioncorresponding to that y-axis location.

The apparatus for moving linear solidification device 88 is similar tothat described in the previous embodiments. In one example, a pair oflinear slides is suspended from the underside of the upper horizontalsurface of housing 360. Connectors on either side of the light opening100 in linear solidification device 88 connect linear solidificationdevice 88 to linear bearings that slide on rails. A motor such as motor76 is be provided with a shaft, timing belt, and pulley assembly toslide linear solidification device 88 in the length (x-axis) direction.

Unlike the embodiment of FIGS. 1-4, there is no container ofsolidifiable material into which build platform 356 is immersed duringan object build process. Instead, solidifiable material is periodicallydispensed into a build tray that is defined by film assembly 205described previously. In FIG. 20A, film 224 (not shown) is positionedabove rigid or semi-rigid solidification substrate 68 and beneath buildplatform 356. The film 224, inner frame 206, and outer frame 220collectively define a shallow basin that holds solidifiable material.Rigid or semi-rigid solidification substrate 68 supports and ispositioned underneath film 224 such that a peripheral portion of rigidor semi-rigid solidification substrate rests in housing 360 (FIG. 19).An opening 362 in the upper surface of housing 360 provides an opticalpathway between linear solidification device 88 and solidifiablematerial 352. As an object is built, solidifiable material 352 issolidified and adheres to the object 366 (FIG. 19), thereby reducing theamount of solidifiable material 352 in the basin. Level detector 361,projects light and senses returned light to determine the level ofliquid in the basin. When the level drops below a selected threshold,additional solidifiable material is dispensed into the basin (using anapparatus that is not depicted).

Referring to FIGS. 20B-20D, a portion of an alternate version of thesystem 350 for making a three-dimensional object is depicted. FIGS. 20Band 20C depict a work table assembly 369 that may be used in system 350of FIG. 20A. The system 350 also includes linear solidification device88 that may be embodied as described previously. A cover 400 may also beprovided to enclose the optics and solidification energy source(s) inthe linear solidification device 88.

In accordance with the depicted example, system 350 comprises a linearsolidification energy device 88 that travels in a first (x-axis)direction as solidification energy is transmitted in a second (y-axis)direction. In addition, a solidification substrate 388 travels in thefirst (x-axis) direction as the linear solidification device 88 travelsin the first (x-axis) direction. The three-dimensional object isprogressively built upside down in the vertical (z-axis) directionduring the object building process.

The work table assembly 369 of FIG. 20B comprises work table 370 and asolidification substrate assembly 371 that comprises film assembly 205,and solidification substrate 388. System 350 also includes a carriage372 and peeling members 374 a and 374 b. Carriage 372 is used to supportand translate the linear solidification device 88 in the x-axisdirection. Peeling members 374 a and 374 b are used to separate film 224of film assembly 205 from the solidified three-dimensional object. Filmassembly 205 acts as a basin or reservoir for holding solidifiablematerial. Level sensor 361 is provided to detect the level ofsolidifiable material held in the film assembly 205 so that solidifiablematerial may be added as needed to maintain a desired level.

Work table 370 includes an opening 376 in which film assembly 205 isdisposed. Film assembly 205 may also include handles 378 a and 378 bwhich are spaced apart from one another in the x-axis direction tofacilitate removal and/or replacement of the film assembly 205 from thework table assembly. Cam latches 386 a and 386 b are spaced apart fromone another in the y-axis direction to releasably lock the film assembly205 into place in work table opening 376.

The solidification substrate 388 of FIGS. 20B-20D is rigid or semi-rigidand is preferably formed as a partial cylinder (half of thecircumference of a complete cylinder or less) having its length axisoriented in the solidification energy scanning axis (y-axis) direction.In certain preferred examples, solidification energy traverses thelength of the solidification substrate 388 at a substantially fixedcircumferential location along the substrate 388. A close-upcross-sectional view of a portion of the film assembly 205, linearsolidification device 88 and the substrate 388 is shown in FIG. 20D. Asshown in the figure, solidification substrate 388 is disposed in anopening within carriage 372 such that the substrate 388 is concaverelative to linear solidification device 88. Substrate 388 has an innersurface that defines an inner radius and an outer surface that defineson outer radius, wherein the outer radius is larger than the innerradius. Linear solidification device 88 is positioned such that theinner surface of the substrate 388 is between the linear solidificationdevice 88 and the outer surface of substrate 388.

Solidification substrate 388 is positioned so that at least a portion ofit projects away in the vertical (z-axis) direction from an uppersurface of carriage 372. Solidification substrate 388 has an apex 389that is the circumferential location of the substrate 388 which isspaced apart from carriage 372 by the farthest distance (as compared tothe other circumferential locations). In certain preferred examples,linear solidification device 88 is positioned such that solidificationenergy is selectively projected along the length of substrate 388substantially at the apex 389. In certain examples, the housing opening100 (FIG. 5B) is oriented parallel to the length of solidificationsubstrate 388 and at an x-axis position that is substantially the sameas the x-axis position of apex 389.

Solidification substrate 388 is preferably formed from a translucentand/or transparent glass or plastic. In certain preferred examples,substrate 388 has a radius of curvature of ranging from about 0.2 inches(5.1 mm) to about 0.8 inches (20.3 mm), preferably from about 0.4 inches(10.2 mm) to about 0.6 inches (15.2 mm), and even more preferably about0.5 inches (12.7 mm). In the same or other preferred examples,solidification substrate 388 has a thickness ranging from about 0.5 mmto about 3.5 mm, preferably from about 0.6 mm to 3.0 mm, and morepreferably from about 1.5 mm to about 2.5 mm. In one example, thethickness is about 2.0 mm.

Referring again to FIG. 20D, film assembly 205 (which is configured asdescribed previously) sits above carriage 372 and solidificationsubstrate 388 in the vertical (z-axis) direction. The use of a curvedsolidification substrate 388 reduces the surface area of contact betweensubstrate 388 and film 224, thereby reducing the friction betweensubstrate 388 and film 224 as substrate 388 travels in the x-axisdirection relative to film 224.

In certain examples, during an object build operation the build platform356 (FIG. 20A) or the most recently solidified downward facing surfaceof the object is immersed in a volume of solidifiable material held inthe film assembly 205 (which acts as a solidifiable material basin orreservoir) until a desired spacing between the most recently solidifieddownward facing surface of the object and a solidification substrate isobtained. During the immersion, pressure forces build up and force orsqueeze out some amount of solidifiable material laterally away from theobject. In the case of a planar solidification substrate, the pressureforces may be undesirably high and could distort the three-dimensionalobject. The curved solidification substrate 388 reduces such pressureforces.

The linear solidification device 88 is operated similarly as in theprevious embodiments. A motor 382 a and an optional motor 382 b (FIG.20C) are operatively connected to linear solidification device 88 totranslate device 88 in the x-axis direction. In certain examples, motors382 a and 382 b are stepper motors that are actuated in units of motor“steps” which may be correlated to a linear distance in the x-axisdirection and used to define object strip data, as discussed below.

Carriage 372 is operatively connected to two externally threaded shafts380 a and 380 b which are spaced apart from one another in the scanning(y-axis) direction. Shafts 380 a and 380 b are supported and attached towork table 370 by brackets 396 a and 397 a (shaft 380 a) and brackets396 b and 397 b (shaft 380 b). Carriage 372 is connected to the threadedshafts 380 a and 380 b by corresponding internally threaded nuts 384 aand 384 b. The activation of motor 382 a (and optionally, motor 382 b)causes the shafts to rotate about their longitudinal axes (which areoriented in the x-axis direction). As shafts 380 a and 380 b rotate, theengagement of the external shaft threads with the internal nut threadscauses the carriage 372 to translate in the x-axis direction. System 350may also include an end of travel sensor such as end of travel sensor346 shown in FIG. 16( b) to allow the x-axis position of the linearsolidification device 88 to be reliably initialized.

Carriage 372 is supported in the vertical (z-axis) direction byinternally threaded nuts 384 a, 384 b and shafts 380 a and 380 b. Linearbearings 402 a and 402 b are attached to the vertically upward (z-axis)facing surface of carriage 372 and slidably engage rails 404 a and 404 bformed on the underside (downward facing surface in the z-axisdirection) of work table 370.

As indicated previously, motor 382 b is optional. In certain cases, onlya single motor 382 a is required. Pulleys 390 a and 390 b are providedon the distal ends of externally threaded shafts 380 a and 380 b. Atiming belt 394 engages pulleys 390 a and 390 b such that when theexternally threaded shaft 380 a rotates about its longitudinal axis,pulley 390 a rotates about its central axis, causing the timing belt 394to begin circulating. The circulation of timing belt 394 in turn causespulley 390 b to rotate about its central axis, which in turn causesexternally threaded shaft 380 b to rotate about its longitudinal axis.The rotation of externally threaded shaft 380 b causes the correspondingside of carriage 372 to translate in the x-axis direction due to theengagement of externally threaded shaft 380 b and internally threadednut 384 b. Tensioner 393 may also be provided to maintain a desiredtension of timing belt 394. In those cases where the optional motor 324b is provided, timing belt 394 may be eliminated.

As best seen in FIG. 20D, the position of solidification substrate 388urges a portion of film 224 of film assembly 205 in a vertically(z-axis) upward direction away from the upper surface of carriage 372and from linear solidification device 88. Peeling members 374 a and 374b are operatively connected to carriage 372 and spaced apart from oneanother along the x-axis direction on respective sides of solidificationsubstrate 388. Film 224 is positioned between the peeling members 374 a,374 b and the upper surface of carriage 372. As solidifiable material issolidified at the location of substrate apex 389, it will tend tosolidify in contact with and adhere to film 224. As carriage 372 movesin the x-axis direction, film peeling members 374 a and 374 b move inthe same direction and pull the film 224 in the downward vertical(z-axis) direction away from the solidified object. Brackets 399 a (notshown) and 399 b are connected to peeling members 374 a and 374 b andare positioned inside the film assembly 205. The brackets 399 a and 399b are also connected to carriage 372 so as to translate with carriage372 when carriage 372 translates in the x-axis direction. Thus, system350 selectively solidifies material in the scanning (y-axis) directionwhile translating a linear solidification device 88 and film peelingmembers 374 a and 374 b in the x-axis direction.

Instead of using film assembly 205, the system 350 for making athree-dimensional object of FIGS. 19 and 20A-D may utilize a basinformed from polymeric materials. In one example, a basin comprising atransparent resilient bottom and resilient side walls is used. Incertain implementations, both the transparent resilient bottom and thenon-resilient side walls are formed from the same or different siliconepolymers. In another implementation, a basin comprising non-resilientacrylic side walls and a resilient silicone bottom is used. In anotherexample, the bottom of the basin is defined by a rigid or semi-rigidtransparent solidification substrate 68 that is connected to side wallsformed of a resilient or plastically deformable polymeric material. In afurther example, the substrate 68 may be coated with a resilienttransparent material, such as a silicone, that extends only a portion ofthe way to the side walls, leaving a peripheral gap around the coatingand between the coating and the sidewalls. In yet another example, thesubstrate 68 may be coated with a resilient transparent material thatextends all the way to the side walls. In certain examples, a tiltingmechanism may be provided that tilts the basin with respect to the buildplatform 356 to peel solidified solidifiable material from the bottom ofthe basin. A non-resilient material such as a transparent non-resilientfilm may also be provided as a layer on top of the resilient bottombetween the resilient bottom and the build platform 356.

As with the earlier embodiments, during an object build process,solidifiable material 352 solidifies in contact with film 224, causingthe film 224 to stretch as the object 366 is pulled upward (z-axisdirection) and away from housing 360. Thus, the movement of buildplatform 354 is preferably controlled to prevent damaging film 224and/or object 366.

In the embodiments of FIGS. 19 and 20A-D, a flexible film mask with amatrix of variably transparent imaging elements (e.g., LCD ortransparent OLED) that can be selectively made transparent or opaque canbe provided, thereby allowing solidification energy to be selectivelyprovided in the y-axis direction while continually supplyingsolidification energy from solidification energy source 90 to rotatingenergy deflector 92. In one example, the flexible film mask is providedon top of rigid or semi-rigid solidification substrate 68.Solidification energy device 88 may be embodied as shown in FIGS. 5A-C.In addition, rotating energy deflector 92 may be replaced with a laserscanning micromirror.

In accordance with certain implementations of the three-dimensionalobject manufacturing processes and apparatuses described herein, amethod of representing object data for use in controlling the action oflinear solidification device 88 is illustrated in FIGS. 14-16 (g).Typical file types used to generate object data include STL (StereoLithography) files or other CAD (Computer Aided Drafting) files commonlytranslated for rapid prototyping systems into formats such as SLC, CLIslice data files or voxelized data files which may include data formatssuch as BMP, PNG, etc. However, any data input type may be used andconverted internally to create the image data used by the linearsolidification device 88. The object data corresponds to the energypattern supplied by linear solidification device 88 and may be generatedby a control unit or by an external source or device (e.g., a network orstorage device).

As an exemplary three-dimensional object, a simple cylinder 300 is shownin FIG. 14. Locations on or within the cylinder can be characterized byx, y, and z-axes as shown. In certain linear solidification deviceimplementations, the intensity and duration of solidification energysupplied at a particular x, y location cannot be controllably varied. Asa result, those locations in the x, y plane which receive solidificationenergy will solidify to substantially the same depth. In suchimplementations, it can be useful to perform a data “slicing” operationin which a computer representation of the three-dimensional object issliced to create a plurality of sections in the build axis (z-axis)direction, each representing a uniform depth across at all points acrossthe x-y plane. Each such section may mathematically correspond to or berepresented by an object layer data set. One exemplary illustration ofsuch slices is graphically depicted in FIG. 15. As shown in FIG. 15, adata representation of the object 300 can be further represented as aplurality of build axis (z-axis) slices 302 _(i), wherein the totalnumber of slices n is substantially equal to the height of the object asbuilt divided by the depth of solidification provided by linearsolidification device 88. The slices 302 _(i) may be representedmathematically be object layer data sets in which each layer is definedby x, y coordinates representing its contours and a z-axis valuerepresenting its location along the build axis, with Az values betweenadjacent slices representing the thickness of the layer.

Each object layer data set may be represented graphically as a pluralityof strips having a length along the scanning axis (y-axis) direction anda width along the x-axis direction, with the strips being arrangedwidth-wise along the x-axis direction. Referring to FIG. 16 (a), a viewtaken along the vertical (z-axis) direction of a graphicalrepresentation of an individual object data slice 302 _(i) is provided.The individual slice 302 _(i) may be represented as a plurality ofadjacent strips 304 _(j), which is represented as m strips. The dashedline is not part of the data representation, but is provided to show thegenerally circular shape defined by strips 304 _(j). In the example ofFIG. 16, the strips have a width corresponding to the direction ofmovement of the linear solidification device 88 (x-axis) and lengthcorresponding to a direction other than the direction of linearsolidification device 88 movement (y-axis). In the specific example ofFIG. 16 (a), the strip length direction is substantially perpendicularto the x-axis direction.

Each strip 304 _(j) graphically depicts a data representation(preferably provided in a form that is readable by a computer processor)of those locations of solidifiable material that will be solidified inthe y-axis direction for a given x-axis location. The locations may alsobe defined relative to build envelope boundaries such as the scanningaxis boundary 344 and the x-axis boundaries 343 and 345 of FIG. 16( b).The control unit (not shown) receives data indicating the location ofsolidification energy in the x-axis direction, for example, as indicatedby the position of linear solidification device 88 in the x-axisdirection. The control unit also receives the data representation(strips 304 j) and directly or indirectly associates each strip 304 _(j)with an x-axis position in the build envelope 342 defined within theexposed surface of the solidifiable material. Thus, a position within astrip on the data representation corresponds to a position on theexposed surface of the solidifiable material.

In FIG. 16( a) x₀ corresponds to the position of the linearsolidification device 88 at which solidification will begin. Theincrement x₁-x₀ represents the width of solidification in the x-axisdirection provided by linear solidification device 88. Thus, when linearsolidification device is at position x₀, solidification energy source 90will supply solidification energy when a facet 94 a-f with which it isin optical communication has a rotational position corresponding to they-axis locations in the build envelope 342 where the strip definedbetween x₀ and x₁ is present. In the illustrated embodiments of FIGS.5A-C, the length of one facet 94(a)-(f) of rotating energy deflector 92corresponds to the maximum scannable y-axis dimension of the buildenvelope 342, i.e., the maximum length of solidification in the y-axisdirection. However, any individual strip 304 _(j) may correspond to ay-axis solidification length less than the maximum scannable y-axisbuild envelope dimension.

As linear solidification device 88 moves along the length (x-axis)direction of solidification substrate assembly 62, it will solidifyregions of solidifiable material corresponding to each strip 304 j. Eachx-axis location corresponds to a particular strip 304 j. In certainembodiments, a linear encoder is operatively connected to motor 76and/or motor shaft 78 to determine the x-axis position of linearsolidification device 88.

The object layer data that is graphically illustrated in FIG. 16( a) maybe mapped onto a build envelope 342 as shown in FIG. 16( c). Each strip304 j may be defined by an x coordinate (or x-coordinate pairs) and oneor more y-coordinates which define the regions of solidification at theparticular x-axis location.

In certain examples, each strip 304 j may be represented by acorresponding set of data strings. In a preferred embodiment, the datastrings comprise a set of time values. In another preferred embodiment,the data strings comprise a string number n and a set of time values. Incertain cases, the string number n corresponds to a linear scan number.For example, using formula (1) described previously a maximum number oflinear scans (N_(max)) may be calculated for a build envelope length Land each linear scan will have a corresponding string index numberassociated with it. For any particular object layer, regions of thebuild envelope 342 along the x-axis direction may not be solidified andmay not be scanned. Nevertheless, all regions at which a unique linearscan may occur in the x-axis direction may be assigned a string number.Thus, for a given speed of motor 76, a given number of facets F of arotating energy deflector 92 and a given rotational speed of rotatingenergy deflector 92, there will be a maximum number of linear scansN_(max) within build envelope 342 and a corresponding number of sets ofdata strings, each of which may or may not have actual scan data (objectdata) in it, depending on whether any scanning is to occur at itscorresponding x-axis location. In the example of FIG. 16( c), thirteenlinear scans are used to form the object layer represented by strips 304j and each linear scan corresponds to a linear scan index ranging from nto n+12 and a unique set of string data having a string index rangingfrom n to n+12.

Typical control systems, including microcontrollers, will have a builtin lag time between the time when solidification data is read and whensolidification energy source 90 is toggled to either an activated ordeactivated condition. The lag time may be variable and may cause errorsin the dimensions of the three-dimensional object being built. In oneexample, a microcontroller is provided with the systems for making athree-dimensional object disclosed herein which has a lag time of nomore than about 80 nanoseconds, preferably no more than about 60nanoseconds, and even more preferably no more than about 50 nanoseconds.The part error can be related to the toggle lag time as follows:

Error=(L _(BE))(RPM)(F)(t _(toggle lag))/(60 sec./min.)(0.001mm/micron)  (3a)

-   -   wherein, Error is the maximum variation in the part dimensions        (microns) due to the toggle lag time;        -   LBE is the build envelope distance in the scanning (y) axis            direction (mm);        -   RPM is the rotational frequency of the rotating energy            deflector 92 (revolutions/minute);        -   F is the number of facets on the rotating energy deflector            92;        -   and        -   t_(toggle lag) (seconds) is the time required for the            microprocessor to        -   toggle the state of the solidification energy source.

In certain preferred implementations, the Error is preferably no morethan 90 microns, more preferably no more than about 90 microns, stillpreferably no more than about 70 microns, and even more preferably nomore than about 50 microns.

FIG. 16( d) provides a table that illustrates exemplary sets of stringdata that correspond to the object strips shown in FIG. 16( c). Thestring indices begin with n=0 at the left-hand border (x₀) of buildenvelope 342 and end at a maximum string number N_(max) at the righthand border of the build envelope 342. Thus, certain sets of datastrings will not have any object data associated with them because theydo not correspond to x-axis locations where solidification where occur.In FIG. 16( d) no solidification occurs prior to string index n=20 andno solidification occurs after the string index n+12. Thus, there are noentries in the table of FIG. 16( d) for the x-axis locations at which nosolidification occurs within build envelope 342.

Each set of data strings depicted in FIG. 16( d) has a start code whichis represented in hexadecimal notation by a series of eight Fs. Goingfrom left to right, the string index n for the data string is next.Following the string index a series of time values is provided. Eachtime value represents a solidification source energization state event.In one example, the energization states are ON or OFF. The time valuesmay take a variety of forms. However, in one implementation they aredefined as elapsed times of a CPU clock in microcontroller unit used tooperate the system for making a three-dimensional object. In oneexample, the CPU has a clock speed of 66 MHz and the units of time areCPU ticks. In an example where the line scanning speed is 1000 lines persecond, the maximum scan length of each line in the scanning axis(y-axis direction) corresponds to 66,000 ticks. Thus, the set of stringdata at n=20 indicates that the solidification energy source 90 will beactivated at 22000 ticks and deactivated at 44000 ticks. The set ofstring data at n=21 indicates that solidification energy source 90 willbe activated at 20000 ticks and deactivated at 46000 ticks. In apreferred embodiment a timer is provided (such as a software timerprogrammed into the microcontroller unit) which is reset at thebeginning of each linear scan, and the beginning of each linear scan issynchronized to the build envelope scanning axis boundary 344 usingsensor 324 of FIG. 5C in the manner described previously. Thus, theticks are defined relative to a zero starting time when the timer isreset at which point the line scanning operation is at the scanning axisboundary 344 (FIG. 16( b)).

In certain examples, a host computer transmits sets of data strings to amicrocontroller unit that operates the system for producing athree-dimensional object for each possible linear scan (i.e., for eachstring ranging from 0 to N_(max)−1) even though some of the sets of datastrings may have no object data (e.g., no CPU tick values) associatedwith them because no solidification occurs at the x-axis location towhich they correspond. While this technique may be used, it consumesexcess microcontroller unit processor capacity involved in reading datastrings corresponding to x-axis locations at which no solidificationoccurs. Accordingly, in certain examples, only data strings containingobject solidification data (e.g., CPU tick values) are transmitted tothe microcontroller unit. In such cases it is convenient to define acomputer memory index m having values ranging from 0 to one less thanthe maximum number of transmitted sets of data strings M_(max), where muniquely identifies each set of string data transmitted to themicrocontroller unit. In the example of FIG. 16( d), there are a totalof N_(max) sets of string data defined for the entire build envelope 342by the host computer. However, only 13 sets of string data include anyobject solidification data. Therefore, assuming that linearsolidification device 88 is moving from left to right in FIG. 16( c),the first data string transmitted by the host computer to themicrocontroller unit will have a computer memory index of m=0 and astring index n of 20. The value of the string index n will correspond toa specific location along the x-axis within build envelope 342. However,the computer memory index m will not necessarily so correspond. Thus,the microcontroller unit need only read 13 data strings instead ofN_(max)−1 data strings.

In certain cases, linear solidification devices 88 utilizing a rotatingenergy deflector 92 may be subject to variability in the linear scanningspeed in the scanning (y-axis) direction. Each facet 94 a-f will have arotational position corresponding to a location along the scanning axis(i.e., a “center point”) at which solidification energy will bedeflected perpendicularly to the solidifiable material and to theopening 100 in the housing of the linear solidification device 88. Atthe center point, the distance traveled by the solidification energyfrom the rotating energy deflector 92 to the solidifiable material willbe at a minimum relative to locations away from the center point. Atrotational positions located away from the center point in the scanning(y-axis) direction, the speed of scanning in the y-axis direction willbe faster than proximate the center point. In addition, the speed willincrease as the distance from the center point increases. At a constantrotational frequency for rotating energy deflector 92, the speedincrease is directly proportional to the distance from the center point.

This variation in scanning speed as a function of scanning axis (y-axis)position can produce inaccuracies in the three-dimensional object. Incertain examples, a three-dimensional object is mapped within a buildenvelope such that the object dimensions dictate specific objectcoordinates in the scanning (y-axis) direction. The coordinates can betranslated to time values indicative of a change in the energizationstate of a solidification energy source if the scanning speed isconstant. However, if time values are used as solidification sourceevent data, variable scanning speeds will cause the coordinates of thesolidified object (and the object dimensions) to vary relative to thecoordinates dictated by the object data because the scanning speed willvary with scanning axis position. In addition, variable scanning speedscan result in solidification energy densities that vary with scanningaxis position because areas that are scanned quickly will have reducedsolidification energy exposure times—and therefore reducedsolidification energy densities—relative to areas that are scanned moreslowly. As a result, hardening depths that vary with scanning axisposition may result.

In certain cases, it is desirable to convert original object data tomodified object data to compensate for variations in scanning speedand/or energy density along the scanning axis. The original object datapreferably comprises a plurality of original object data sets each foran object cross-section and corresponding to a build axis (z) location.Each original object data set comprises a plurality of originalsolidification energy source event data items, wherein each data item isindicative of a change in the energization state of a solidificationenergy source. The data items may be, for example, scanning axislocations where an energization state change will occur or times when anenergization state change will occur.

Referring to FIG. 26, a method for correlating original object data tomodified object data is depicted. In accordance with the method, aplurality of test part object data is provided in step 1101 wherein eachtest part has different coordinates along the scanning (y) axis. In theexample of FIG. 26, the test part object data is preferably time-based(e.g., CPU ticks). The time-based object data may be determined bymapping the object onto a build envelope (see FIG. 16( c)) to determinethe scanning axis (y) locations at which a solidification energy sourceevent occurs. Using an average scanning speed based on the total timerequired to scan one line along the entire build envelope in thescanning axis direction, the locations can be converted to time values.The time values may be converted to CPU ticks using the CPU speed (e.g.,in MHz/sec). The time values are then supplied in data strings that areused to solidify a solidifiable material and form the test parts in step1103. In step 1105, the actual scanning axis coordinates of each testpart are measured.

Using known curve-fitting techniques, the scanning axis positionsmeasured in step 1105 are correlated to the solidification energy sourceevent data (e.g., CPU ticks) in step 1106. In one example, the followingequation is obtained from such curve-fitting techniques:

f(t)=c ₃ t ³ +c ₂ t ² +c ₁ t+c ₀  3(b)

-   -   wherein, f(t)=scanning axis position (e.g., in mm) relative to        scanning axis boundary 344 (FIG. 16( b));    -   t=time at which f is reached relative to the time at which the        line scanning operation is at the scanning axis boundary 344        (FIG. 16( b)); and    -   c₀, c₁, c₂, c₃=correlation coefficients (constants), where c₃        has units of mm/(CPU ticks)³, c₂ has units of mm/(CPU ticks), c₁        has units of mm/CPU ticks, and c₀ has units of mm.

In step 1108, any applicable correlation coefficients (e.g., c₀, c₁, c₂,c₃) are obtained, for example, by determining the value of eachcorrelation coefficient that minimizes the sum of the square of theerror in the correlation. In step 1110, the correlation from step 1106is solved to obtain modified object data as a function of originalobject data and scanning axis position. This resulting correlation maythen be stored on a computer readable medium and used in a set ofcomputer executable instructions to obtain modified object data fromoriginal object data. In one preferred example, the original object datacomprises sets of original solidification energy source event dataitems, each data item being a scanning axis coordinate f (relative to ascanning axis boundary such as boundary 344 in FIG. 16( b)) at which asolidification source energization event (e.g., activation ordeactivation) occurs, and the modified object data comprises sets ofmodified solidification energy source event data items, each data itembeing a time (e.g., CPU ticks) when a solidification source energy eventoccurs, wherein the modified object data items are based on thecorrelation of step 1106. Thus, the method of FIG. 26 provides modifiedobject data items, each of which is a function of a correspondingoriginal object data item and its associated scanning axis location.

FIG. 27 is a flow chart depicting a specific implementation of themethod of FIG. 26. In the method of FIG. 27, the correlation of equation3(b) is used to correlate time-based solidification energy source eventdata (CPU ticks) to position based data (scanning axis position in mm).In accordance with the method, test part object data based on thedesired shape and size of test parts is obtained in step 1112. The testpart object data is provided for a plurality of n test objects having aunique test object index ranging from i=1 to n. In one example, the testparts are mapped on to a build envelope as shown in FIG. 29. Test parts395 ₁ to 395 _(n) are preferably rectangular bars and map onto scanningaxis coordinates that define an equal length for each test part. In theexample of FIG. 29, the test parts are spaced apart along the x axis andhave scanning axis coordinates that overlap with their adjacentneighbors. Thus, part 1 has an ending scanning axis coordinate (at whichthe solidification energy source is deactivated) that has a higher valuethan the beginning scanning axis coordinate for its immediate neighbor,part 2.

Using a known average scanning speed of the linear solidification device(determined as described previously), the scanning axis coordinates foreach test part can be converted to CPU tick values at which scanningbegins and ends for each part. Thus, for part 1 scanning begins at a CPUtick value of t_(1s) and ends at a CPU tick value of t_(1e). The CPUtick values are provided as data strings that each correspond to across-section (z-axis location) and an x-axis location, such as thoseshown in FIG. 16( d) or FIGS. 16( f) and 16(g). Using a linearsolidification device of the type described previously, a solidifiablematerial is solidified to create the test parts (step 1114). In step1116 the length l_(i) of each test part is measured.

In step 1118, the correlation coefficients c₀, c₁, c₂, and c₃ areobtained by determining the value of each correlation coefficient thatminimizes the sum of the square of the error in equation 3(b). Forexample, a total error F may be defined as follows:

F(c ₃ ,c ₂ ,c ₁ ,c ₀)=Σ_(i=1) ^(n)(c ₃(t _(ie) ³ −t _(is) ³)+c ₂(t _(ie)² −t _(is) ²)+c ₁(t _(ie) −t _(is))−l _(i))²  3(c)

-   -   wherein, F=sum of squares of error (also referred to as the sum        of squared errors of prediction (SSE)) in mm;    -   t_(ie)=solidification energy source deactivation time for the        test part (e.g., CPU ticks);    -   t_(is)=solidification energy source activation time for the test        part (e.g., CPU ticks);    -   l_(i)=measured length of test part;    -   c₀, c₁, c₂, c₃=correlation coefficients, where c₃ has units of        mm/(CPU ticks)³, c₂ has units of mm/(CPU ticks)², c₁ has units        of mm/CPU ticks, and c₀ has units of mm; and    -   i=test part index (ranging from 1 to n test parts)

The partial derivative of equation 3(c) with respect to each correlationcoefficient may be set equal to zero to develop a system of threeequations that can be solved to obtain c₁, c₂, and c₃:

$\begin{matrix}{\frac{\partial F}{\partial c_{3}} = {{\sum\limits_{i = 1}^{n}{2\left( {{c_{3}\left( {t_{ie}^{3} - t_{is}^{3}} \right)} + {c_{2}\left( {t_{ie}^{2} - t_{is}^{2}} \right)} + {c_{1}\left( {t_{ie} - t_{is}} \right)} - l_{i}} \right)\left( {t_{ie}^{3} - t_{is}^{3}} \right)}} = 0}} & {3(d)} \\{\frac{\partial F}{\partial c_{2}} = {{\sum\limits_{i = 1}^{n}{2\left( {{c_{3}\left( {t_{ie}^{3} - t_{is}^{3}} \right)} + {c_{2}\left( {t_{ie}^{2} - t_{is}^{2}} \right)} + {c_{1}\left( {t_{ie} - t_{is}} \right)} - l_{i}} \right)\left( {t_{ie}^{2} - t_{is}^{2}} \right)}} = 0}} & {3(e)} \\{\frac{\partial F}{\partial c_{1}} = {{\sum\limits_{i = 1}^{n}{2\left( {{c_{3}\left( {t_{ie}^{3} - t_{is}^{3}} \right)} + {c_{2}\left( {t_{ie}^{2} - t_{is}^{2}} \right)} + {c_{1}\left( {t_{ie} - t_{is}} \right)} - l_{i}} \right)\left( {t_{ie} - t_{is}} \right)}} = 0}} & {3(f)}\end{matrix}$

Once correlation coefficients c₁, c₂, and c₃ are obtained, they can beused with equation 3(b), the known starting or ending scanning axiscoordinate f and the corresponding solidification energy source eventdata (e.g., t_(ie) or t_(is)) values of any test part to obtain c₀ (step1120).

Referring to FIG. 28, a method of converting original object data tomodified object data to compensate for variations of scanning speed as afunction of scanning axis position is described. In accordance with themethod, original solidification energy source event data is providedwhich comprises a plurality of solidification source event data items. Aplurality of modified solidification energy source event data items arecalculated wherein each modified solidification energy source event dataitem is calculated based on a corresponding original solidificationenergy source event data item and the scanning axis position (relativeto a scanning axis border) with which the original solidification energysource event data item is associated. The solidifiable material is thensolidified based on the modified solidification energy source event dataitems.

For example, a set of original object data strings may be provided instep 1122 for each cross-section of a three-dimensional objectcorresponding to a particular build (z) axis location, wherein each datastring corresponds to a particular x-axis location. Each set of datastrings may correspond to a strip oriented along the scanning axis, asillustrated in FIG. 16( c). In one example, each data string includesone or more items that are indicative of a solidification energy sourceevent. Thus, for example, in one original object data string a scanningaxis position coordinate of 15 mm may indicate a position at which thesolidification energy source is activated to begin solidification, andan adjacent scanning axis position coordinate of 45 mm may indicate aposition at which the solidification energy source is deactivated.

In step 1124 each scanning axis position coordinate (f) is converted toa CPU tick value (t) using the following equation, which is equation3(b) rearranged to solve for t:

$\begin{matrix}{t = {{- \frac{c_{2}}{3\; c_{3}}} - {\frac{1}{3\; c_{3}}\sqrt[3]{\frac{1}{2}\left\lbrack {{2\; c_{2}^{3}} - {9\; c_{3}c_{2}c_{1}} + {27\; {c_{3}^{2}\left( {c_{0} - f} \right)}} + \sqrt{\left( {{2\; c_{2}^{3}} - {9c_{3}c_{2}c_{1}} + {27{c_{3}^{2}\left( {c_{0} - f} \right)}}} \right)^{2} - {4\left( {c_{2}^{2} - {3c_{3}c_{1}}} \right)^{3}}}} \right\rbrack}} - {\frac{1}{3\; c_{3}}\sqrt[3]{\frac{1}{2}\left\lbrack {{2\; c_{2}^{3}} - {9\; c_{3}c_{2}c_{1}} + {27{c_{3}^{2}\left( {c_{0} - f} \right)}} - \sqrt{\left( {{2\; c_{2}^{3}} - {9\; c_{3}c_{2}c_{1}} + {27\; {c_{3}^{2}\left( {c_{0} - f} \right)}}} \right)^{2} - {4\left( {c_{2}^{2} - {3\; c_{3}c_{1}}} \right)^{3}}}} \right\rbrack}}}} & {3(g)}\end{matrix}$

-   -   wherein, f=scanning axis position relative to the scanning axis        build envelope boundary 344 (FIG. 16( b)) based on part data;    -   t=modified solidification energy source event data in CPU ticks        that compensates for variable speed of scanning as a function of        scanning axis position; and    -   c₀, c₁, c₂, and c₃=correlation coefficients.

In a preferred example, an apparatus for making a three-dimensionalobject is provided which includes a linear solidification device, acontroller, and a computer readable medium having computer executableinstructions programmed thereon for receiving original object data andcalculating modified object data items based on original object dataitems using equation 3(g) or another suitable correlation. The linearsolidification device is preferably configured similarly to device 88,and the controller is preferably operatively connected to thesolidification energy source of the linear solidification device toselectively activate and deactivate the solidification energy sourcebased on the modified object data determined by equation 3(g).

Correlations other than that of equation 3(g) may be used to compensatefor variations in scanning speed and/or scanning energy density alongthe scanning axis. In another embodiment, the data values indicative ofchanges in the energization state (e.g., the number of CPU ticks asexemplified in FIGS. 16( d), (f), and (g)) are adjusted based on theircorresponding distance from the center point of the linearsolidification device 88). In one implementation, the string data at anystring index value n is adjusted as follows:

New CPU ticks=Old CPU ticks+ΔCPU ticks*C  3(h)

-   -   wherein, ΔCPU ticks is calculated by subtracting Old CPU ticks        from the center point CPU ticks, and C is a dimensionless        constant. The variable “center point CPU ticks” refers to the        number of CPU ticks at which the solidification energy will        strike the center point. In general, it will correspond to the        mid-point of a full scan line along the scanning axis direction.

Thus, in equation 3(h), the values of old CPU ticks comprise originalobject data items, and the values of new CPU ticks comprise modifiedobject data items. Equation 3(h) may also be modified for use withlinear distances before they are converted to CPU ticks. For example,referring to FIG. 15, a three-dimensional object may be sliced into aplurality of slices such as 302 i where i ranges from 1 to the maximumnumber of slices n. A given slice may be projected onto the build areaas shown in FIG. 16( c). Each scan line 304 j will have locations thatdefine a distance relative to a reference location along the scanningaxis direction (e.g., border 344 where y=y₀) where the energizationstate of the solidification energy source 90 changes. The center pointmay also be defined relative to the same reference location. For eachlocation along the x axis, there will be a plurality of y-axis values(relative to y₀ border 344) at which the energization state changes. Foreach strip shown in FIG. 16( c), the energization state will changetwice. Thus, for a given position along the x-axis, each scanning (y)axis value at which the solidification energy source energization statechanges may be corrected to account for the scanning (y) axis variationin solidification energy scanning speed as follows:

y _(new) =y _(old)+(y _(center point) −y _(old))*C  3(i)

-   -   wherein, y_(old) is a y-axis position relative to the y-axis        reference location (e.g., border 344 in FIG. 16( c)) at which        the energization state changes as determined by placing        (mathematically or graphically) a slice 302 i of the        three-dimensional object onto a build envelope;    -   y_(center point) is the location of the center point relative to        the y-axis reference location (e.g., border 344 in FIG. 16( c));    -   y_(new) is the new, corrected y-axis value at which the        energization state changes; and    -   C is a dimensionless constant.

The values of y_(new) may then be converted to CPU ticks to define thestring data for solidification. In equation 3(i) the y_(old) valuescomprise original object data items, and the y_(new) values comprise newobject data items.

The value of the dimensionless constant C may be determined by trial anderror. In one example, a plurality of linear sections are solidifiedalong a direction that is substantially perpendicular to the scanning(y) axis direction, e.g., along the x-axis direction. The string data onwhich the linear sections are based are such that each line is equallyspaced apart from its neighbors. In the case of a data string that readsString (n)=(FFFFFF, n, 10000, 10500, 11500, 12000, 22000, 22500, 32500,33000, 43000, 43500), each linear section would be expected to have ascanning axis thickness corresponding to 500 CPU ticks and equalspacings between linear sections equal to 1000 CPU ticks. If thescanning speed varies along the scanning (y) axis direction, the actualsolidified linear sections will not be spaced apart by equal amounts asthe object data would otherwise dictate. For example, where the scanningspeed is faster at the ends of the scan line relative to the centerpoint, the spacings between adjacent linear sections will increase asyou move along the y-axis away from the center point (in either thepositive or negative y-axis direction). C can be calculated by ratioingthe distances between any two adjacent strings (and/or by averaging theratios of adjacent neighbors) or by making adjustments to C andrepeating the solidification process until the spacings between linearsections are substantially equal.

Thus, in one method of making a three-dimensional object, athree-dimensional object is sliced into adjacent slices along a buildaxis (e.g., as shown in FIG. 15). Each slice is then subdivided into aset of linear strips, each extending along the scanning direction (e.g.,the y-axis). A center point is determined by determining the positionalong the scanning axis direction at which the distance betweensolidification energy deflected by the rotating energy deflector 92 andthe solidifiable material is a minimum. In one variation, each strip isthen converted to a set of scanning axis values (which may be, forexample, linear distances relative to a build envelope border or CPUtick values) at which the solidification energy source 90 energizationstate changes. Each scanning axis value is then corrected to account forthe variation in scanning speed along the scanning axis, preferably byan amount that varies with the distance between the location of thescanning axis value along the scanning axis and the center point, suchas by using equation 3(h). The corrected scanning axis values are thenused by the microcontroller to perform the solidification process. Inanother variation, the set of linear strips is converted into CPU ticksand then corrected, such as by using equation 3(i).

In many three-dimensional object building processes, there will beseveral adjacent layers that are identical and which therefore can berepresented by identical object layer data. Referring to FIG. 16( e),object layer data is depicted in graphical form which may be used toform several layers. In certain cases it is preferable to perform linescanning operations both when linear solidification device 88 is movingfrom left to right and from right to left along the x-axis. Thispresents no problem when the object is symmetrical about the mid-line ofthe x-axis direction. However, when multiple identical asymmetricallayers are formed, the microcontroller unit must read the string datasets in the opposite order when the linear solidification device 88 ismoving in opposite directions. For example, the table of FIG. 16( f)depicts multiple sets of string data which correspond to the objectlayer data of FIG. 16( e). When moving linear solidification device 88from left to right, the first set of string data at which solidificationoccurs has a string index of n=20 and a computer memory index value m ofzero. The last set of string data at which solidification occurs has astring index of n=60. When linear solidification device 88 reversesdirection to go from right to left it cannot perform the solidificationstarting with computer memory index m=0 and data string index n=20because that data was defined for the left hand side of FIG. 16( e), notthe right hand side. Thus, performing line scanning operations based onsuch data would solidify a pattern that is the reverse of the desiredpattern. The microcontroller unit or host computer could calculate andstore full sets of data strings for the right to left direction based onthe data generated for the left to right operation. However, thisoperation would consume excessive memory and processor capacity.

In one method of operation, the data for adjacent identical layers isinverted by the host computer and transmitted to the microcontrollerunit. In accordance with the method, identical three-dimensional objectlayer data corresponding to first (even) and second (odd) adjacentlayers of solidifiable material used to form the three-dimensionalobject is provided. The object layer data is subdivided into respectivefirst and second pluralities of object cross-section strips, whereineach object cross-section strip in the first plurality of objectcross-section strips has a set of strip data and a strip index valuen(even) ranging from 0 to the maximum index value of N_(max)−1 in thefirst plurality of object cross-section strips. Each strip in the secondplurality of object cross-section strips has a set of strip data and acorresponding strip index value n(odd), and the strip data correspondingto each respective value of n(odd) for the second plurality of objectcross-section strips equals the strip data for the first plurality ofobject cross-section strips that corresponds to the string index valuen(even) equal to N_(max)−1 minus the respective value of n(odd). As eachodd layer is solidified, the host computer can simply identify thecorrect even layer data string that corresponds to each odd layer datastring and transmit the even layer data string to the microcontroller,thereby avoiding the need to store a set of odd layer data strings. Theuse of this inversion technique allows data for multiple layers that aresolidified in opposite directions to be determined by creating objectlayer data for only one layer and either inverting (for layerssolidified in the opposite x-axis direction) it or using it (for layerssolidified in the same x-axis direction) for all subsequent layershaving the same cross-sectional shape.

An exemplary inversion used to reduce the storage capacity of a computerreadable medium required to store three-dimensional object datacorresponding to a plurality of object layers may be described asfollows: A first set of object layer data is stored on a computerreadable medium. The first set of object layer data comprises a firstset of data strings such as those depicted in FIGS. 16( d), (f), and(g). Each data string in the first set may be represented as d(0, m),wherein 0 indicates that the string belongs to the first set, and m is acomputer memory index value unique to the string. The index values mrange from 0 for the first data string to M_(max) (or M_(total)). Thehighest index value will be M_(max)−1 (because the first value is zero).

A program is stored on the computer readable medium (which may be thesame or different as the one on which the first set of object layer datais stored) with instructions for calculating a second set of datastrings for a second set of object layer data. The layers to which thefirst and second sets of object data correspond are preferably adjacentone another and define an alternating layer sequence (first set, secondset, first set, second set, etc.). The string data for the second set ofobject layer data may be calculated using the following equation orusing any set of equations such that the string data for the second setof object layer data corresponds to that of the first layer of objectdata in accordance with the following equation:

d(1,m)=d(0,M _(max)−1−m)  (4)

-   -   wherein, d(1,m) is the string data for layer 1 at a given value        of the computer memory index, m.

Using equation (4), the host computer can simply identify the datastring for the 0^(th) layer that corresponds to each data string for the1^(st) layer and transmit it to the microcontroller. Neither the hostcontroller nor the microcontroller need store the d(1,m) strings inmemory. As mentioned previously, each location along the x-axisdirection of build envelope 342 may uniquely correspond (directly orindirectly) to a string index n. The computer memory index is used toavoid storing data strings that are empty because the correspond tolocations where solidification will not take place. However, the datastrings for the entire build envelope can be related to one anotherusing an equation similar to equation 3a by replacing m with the stringindex n and replacing M_(max) with the maximum number of data stringsfor the build envelope, N_(total).

The foregoing data inversion technique is illustrated in FIGS. 16( f)and (g). In the example, N_(max) (as may be calculated by equation (1))is 101 and the string indices range from 0 to N_(max)−1 (i.e., 0 to100). Thus, when solidifying from right to left (FIG. 16( g)) along thex-axis the set of string data for the odd layer having a string index of40 (starting from n=0 at the right-hand build envelope boundary 345 inFIG. 16( b)) is the same as the set of string data used for the evenlayer string having the string index n=100−40=60. Thus, the stringindices are always started at zero at both the left and right handboundaries, but the inversion of the sets of string data by the hostcomputer as reflected in FIGS. 16( f) and 16(g) avoids the need forrecalculating new string data for the odd layer from the object data.Instead, the even layer data can simply be inverted and supplied to themicrocontroller unit. In another example, the inversion process can behandled based on the computer memory index value m instead of the stringindex value n using equation (4). Thus, for example, when solidifyingthe odd layer (going from right to left) the string data for m=1 can becalculated by taking the even layer data at m=M_(max)−1−m(odd)=39(M_(max) is the total of computer index values, which is 41, not themaximum index value which is 40). This latter technique avoids the needto read string data for strings at which no solidification occurs andinstead requires reading only those strings at which there issolidification, which by definition are those assigned a computer memoryindex value m.

As mentioned previously, in certain implementations of the systemsdescribed herein a motor movement parameter such as a number of motorsteps is used to indirectly indicate when the linear solidificationdevice 88 is at an x-axis location corresponding to a particular linearscan or string data index, n. For a desired index value, n, the numberof steps from the relevant build envelope x-axis boundary, 343 or 345,can be calculated using the following formula:

Steps=W(S)(n)(RPM)(F)/60  (5)

-   -   wherein, Steps is the number of motor steps from the build        envelope x-axis boundary to the location at which the line scan        having the index value n is performed;    -   W is a ratio of motor steps for motor 76 per unit length in the        x-axis direction in steps/mm;    -   S is the speed of the motor 76 in mm/second;    -   RPM is the rotational frequency of the rotating energy deflector        in revolutions per minute; and    -   F is the number of facets on the rotating energy deflector.

The variable W can itself be considered a “motor movement parameter”since it depends on a number of motor steps. As indicated previously, Wcan be estimated from known mechanical relationships between therotational speed and gear ratio of motor 76 and the pulley diameters 82a and 82 b. One method of estimating W is to determine the number ofestimated steps required to traverse the x-axis length L of buildenvelope 342 based on such known mechanical relationships. However, dueto thermal effects and other non-idealities, the estimated value of Wmay not be accurate. In cases where solidification is performedbi-directionally with respect to the x-axis (starting from the buildenvelope boundaries 343 and 345), the error in W can cause misalignmentbetween odd and even layers because the calculated number of steps willnot correspond to the desired x-axis location believed to correspond tothe value of n used in equation (5). For example, if a build process isstarted from the left to right direction along the x-axis direction, andW is too high, a given value of n will cause solidification to occurfarther to the right than desired. As a result, the right-most boundaryof the part will be farther to the right than desired. If solidificationis then reversed (right to left), the number of steps corresponding to agiven value of n will be shifted farther to the left than desired. Thus,when the resulting part is viewed from the same orientation as the onein which it was built (i.e., with the side that was the left side duringformation positioned to the left of the side that was the right sideduring formation), the portions of the part that were solidified in theleft to right direction will have a right hand border that is shifted tothe right relative to the portions of the part that were solidified inthe left to right direction. The left hand border of the portions of thepart solidified in the right to left direction will be shifted to theleft relative to those solidified in the left to right direction.Conversely, if solidification starts from left to right and W is toolow, when viewing the resulting part in the same orientation as the onein which it was built, the right-hand border of the portions solidifiedin the left to right direction will be shifted to the left relative tothe portions solidified in the right to left direction, and theleft-hand border of the portion solidified in the left to rightdirection will be shifted to the when solidifying from right

As a result, in certain implementations it is desirable to adjust themotor movement parameter (e.g., W) based on test part measurement data.The test part measurement data may comprise the length of an offsetdimension or gap between two or more sections of the test part. Incertain cases where the data inversion method illustrated in FIGS. 16(f) and (g) is used, an offset is created between those sections ofidentical layers which are solidified in opposite directions along thex-axis. The offset is then used to adjust the value of W.

One method of preparing a test part for use in determining theadjustment of the motor movement comprises forming a first series oflayers of the test part by moving linear solidification device 88 in afirst direction along the x-axis (e.g., left-to-right) and performinglinear scan operations in the scanning axis (y-axis) direction. A secondseries of layers is then formed by moving linear solidification device88 in an x-axis direction opposite the one used to form the first set oflayers (e.g., right-to-left) and performing linear scan operations inthe scanning axis (y-axis) direction. The test part may have a varietyshapes, but in certain examples a simple rectangular block shape isused. In other examples, and as illustrated in FIGS. 25( a) and 25(b), ahemispherical test part shape is used. In the formation of the testpart, an initial value of the motor movement parameter is specifiedwhich is believed to yield the correct build envelope 342 length in thex-axis direction. In one preferred example, the motor movement parameteris a number of motor steps for motor 76 that is estimated to correspondto the known length L of build envelope 342. From this data, a predictedvalue of W can be calculated.

As indicated by equation (5), if the motor movement parameter is inerror, the predicted value of W will also be in error, which in turnwill cause the number of motor steps (Steps) calculated from equation(5) to be in error. The effects of such an error in W can be exemplifiedby referring again to the data of FIG. 16( f). If a test part is builtusing that data, the first series of layers will all use the data ofFIG. 16( f) and will be formed in the left to right direction along thex-axis. The second series of layers will be formed in the right to leftdirection along the x-axis. As the data indicates, for the left to rightlayers, the first linear scan going from the left to right directionwill be performed at string index value n of 20. If the predicted valueof W is greater than the actual value, the first linear scan will beoffset farther to the right from the left hand build envelope boundary343 than desired, as will all of the subsequent linear scans. As aresult, all of the left to right (even) layers will be shifted to theright relative to the desired position. When solidification direction isreversed and the data of FIG. 16( g) is used, the first string at m=0,n=40 will be offset farther to the left from the right-hand buildenvelope boundary 345 than desired. Thus, when the test part is completeand viewed from the same orientation as its build orientation, the firstset of layers formed in the left to right direction will be shifted tothe right relative to the second set of layers formed in the right toleft direction. The shift will produce a measurable offset dimension.

The test part's measured offset dimension can then be used to correctthe value of W used by the microcontroller in accordance with equations(6)-(8):

Step Offset=ΔL*W  (6)

Corrected Build Envelope Length in Steps=Steps (Predicted)+StepOffset  (7)

W _(corrected)=Corrected Build Envelope Length in Steps/L  (8)

-   -   wherein, Δ L is the measured offset dimension (mm) between the        first and second sets of test part layers, and a positive value        of Δ L indicates that the left to right layers are offset to the        left relative to the right to left layers, while a negative        value of Δ L indicates that the right to left layers are offset        to the right relative to the right to left layers;    -   W is the original, predicted value of W (steps/mm);    -   L is the build envelope length (mm);    -   Steps (Predicted) is the original number of steps predicted to        correspond to build envelope length L based on motor rotation        frequency, gear ratio, and pulley diameter, which equals W*L,        where L is the build envelope length in mm; and    -   W_(corrected) is the corrected value of W

The value of W_(corrected) can then be used with equation (6) insubsequent part building processes. The foregoing relationships can begeneralized with respect to the build directions as follows: Ifsolidification occurs in a first series of layers in a first directionand a second series of layers in a second direction (opposite the firstdirection), when viewing the part in an orientation (the viewingorientation) that is the same as the one in which it was built (theformation orientation) a value of W that is too low will cause the firstset of layers to be shifted in the second direction relative to thefirst set of layers, and the value of Δ L used in equation (7) will bepositive. Conversely, if the value of W is too high, the first set oflayers will be offset in the first direction relative to the second setof layers, and the value of Δ L in equation (7) will be negative.

The relationship between the “viewing orientation” and the “formationorientation” can best be understood with an example. Each layer will besolidified by forming a series of linearly cured sections starting froma build envelope origin and ending at a build envelope terminal point. Aformation orientation can be selected by selecting an arbitrarycoordinate system which will then define a direction going from theorigin to the terminal point, such as the “positive x-axis direction” or“left to right.” The “viewing orientation” used to measure the offset ΔLshould then be the same as the formation orientation, such that whenviewing the object the portion of the solidified object at whichsolidification began (the origin) has the same directional relationshipto the portion of the solidified object at which solidification ended(the terminal point).

In certain examples, ΔL is measured using a caliper with a minimummeasurement capability of 50 microns. In such cases, offset values ΔL ofless than 50 microns cannot be measured, and layers formed in onedirection may be offset from those formed in the other direction by upto 50 microns. In some cases, it may be desirable to increase theaccuracy of the part building process by measuring smaller offset valuesΔL and adjusting a motor movement parameter (e.g., W) accordingly. Onemethod suitable for this purpose will now be described with reference toFIGS. 25( a) and 25(b). In accordance with the technique, a generallyhemispherical test part is built. A first set of layers 504 is formed bysolidifying the resin only when solidification energy device 88 moves ina first (positive) direction along the x-axis (FIG. 16(b)). A second setof layers 502 is then formed by solidifying the resin only whensolidification energy device 88 moves in a second (negative) directionopposite to the one used to form the first set of layers 504. In FIG.25( a), the layers 502 and 504 are viewed by looking in a directionperpendicular to the x-z plane (i.e., along the scanning or y-axis).

In accordance with the method, the completed test part is then placedunder a microscope and viewed along the z (height) axis such that thepoints of origin of the layers are in the same relative positions alongthe x-axis as during the formation process (i.e., the points of originof section 502 are farther out in the positive x-axis direction than thepoints of origin of section 504). Two circular sections 502 and 504 willbe visible. If the motor movement parameter W is in error, the innercircle 502 will not be concentric with the outer circle 504, althoughtheir diameters parallel to the x-axis should be substantiallyco-linear. In such cases, two offsets, Δr₁ and Δr₂, may be measuredbetween the x-axis extremes of each circular section 502 and 504. Asshown in FIG. 25( b), the x-axis location of section 502 that isfarthest from the scanning (y) axis may be subtracted from the x-axislocation of section 504 that is farthest from the scanning (y) axis toyield Δr₁. The x-axis location of section 504 that is closest to they-axis may be subtracted from the x-axis location of section 502 that isclosest to the y-axis to yield Δr₂. If the motor movement parameter iscorrectly set, the value of Δr₁-Δr₂ will be zero (or substantiallyzero). However, if the motor movement parameter is incorrectly set,Δr₁-Δr₂ will be non-zero. As mentioned above, in the example of FIGS.25( a) and 25(b) section 504 is formed only while solidification energydevice 88 moves in the positive x-axis direction, and section 502 isformed only while solidification energy device 88 moves in the negativex-axis direction. The negative value of Δr₁-Δr₂ indicates that the motormovement parameter (e.g., W) was set too low. Thus, by buildingadditional test parts with increased values of W, the correct value (theone that yields Δr₁=Δr₂) can be determined and input into themicrocontroller for actual (non-testing) part builds. Equations (6)-(8)may be used to calculate a corrected value of the motor movementparameter (W_(corrected)) by substituting Δr₁-Δr₂ for ΔL.

Referring again to FIG. 5C, embodiments of a method for synchronizing atimer to the position of a scan line within the build envelope 342 willnow be described. The method comprises activating a solidificationenergy source, such as source 90, which is in optical communication witha scanning device, such as a rotating energy deflector 92 or a linearscanning micromirror. The scanning device deflects solidification energyreceived from solidification energy source 90, and the deflectedsolidification energy is received by a solidification energy sensor,such as sensor 324. In certain examples, a mirror such as mirror 332 isprovided to facilitate the transmission of deflected solidificationenergy from the scanning device to sensor 324.

In accordance with the method, the solidification energy sensor sensesthe receipt of solidification energy and generates a sensing signal thatis transmitted to a system microcontroller. The sensor's receipt of thesolidification energy corresponds to the beginning of a line scanningoperation. A timer is then initialized to a specified value (e.g., zero)based on the receipt of solidification energy by the sensor.

An example of the foregoing synchronization method will be describedwith reference to FIG. 5C. As illustrated in the figure, in certainexamples, a solidification energy sensor 324, such as a light sensor,may be used to determine the y-axis location of solidification energysupplied by linear solidification energy device 88. In one example, asolidification energy sensor 324 is in optical communication withrotating energy deflector 92 to receive solidification energy deflectedtherefrom. In another example, the solidification energy sensor 324 islocated at one end of housing 96 to indicate when solidification energyprojected in the y-axis direction has reached its end or beginning oftravel in the y-axis direction. In accordance with the example, thesolidification energy sensor 324 is positioned at a location thatcorresponds to a maximum solidification energy position in the seconddirection (i.e., at a location corresponding to the end of travel in they-axis direction). However, the sensor 324 can be located at otherpositions, but is preferably at a location at which the length ofsolidification energy travel between sensed events is known. In FIG. 5C,the location of mirror 332 and sensor 324 along with the depictedclockwise rotational direction of rotating energy deflector 92 cause thesensing of solidification energy by sensor 324 to correspond to thebeginning of a linear scanning operation.

In accordance with such examples, a processor operatively connected to aclock (i.e., a CPU clock) receives the solidification energy sensorsignals from sensor 324 and a timer operating on the clock units issynchronized to them, allowing an elapsed time between sensedsolidification energy pulses to be calculated. The y-axis maximum scanlength (e.g., the length of opening 100 or a measured length ofsolidification energy travel in the y-axis direction) is determined, andthe speed of solidification energy beam travel in the y-axis directionis calculated by dividing the maximum y-axis length of travel by theelapsed time between pulses:

s=1/Δt _(max)  (9)

-   -   wherein, s=speed of solidification energy beam travel in the        y-axis direction (e.g. cm/sec);        -   1=maximum length of travel (e.g., cm); and        -   Δt_(max) elapsed time between sequential sensed            solidification energy signals generated by solidification            energy sensor (e.g., sec).

By synchronizing the clock to the sensor's receipt of solidificationenergy and using the last speed value (or a suitable averaged value),the position of the solidification energy beam in the y-axis directioncan be calculated:

y=sΔt  (10)

-   -   wherein, y=y-axis position of solidification energy beam along        solidifiable material relative to the y-axis starting point        (e.g., cm);        -   s=speed of solidification energy beam travel from formula            (1);    -   and        -   Δt=elapsed time from last solidification energy signal from            sensor.

A linear solidification controller (for example, as implemented in amicrocontroller unit) operatively connected to solidification energysource 90 can selectively activate and deactivate solidification energysource 90 to cause solidification energy to be supplied only when linearsolidification device 88 is at an x, y location on the solidifiablematerial that corresponds to a point on one of the strips 304 _(j) shownin FIG. 16. Using formulas (9) and (10), the linear solidificationcontroller can receive data indicative of the y-axis position ofsolidification energy. A linear encoder may provide the linearsolidification controller with x-axis location information (for linearsolidification energy device 88), allowing the controller to determinethe desired y-axis profile at the determined x-axis location from objectdata such as that in FIG. 16 (a). As mentioned previously, the objectlayer data may also be converted to a plurality of sets of data stringssuch that each plurality corresponds to a given layer and position alongthe build axis (z-axis). In accordance with such examples, each set ofdata strings includes a plurality of time values, each of which definesa time at which the energization state of the solidification energysource 90 is changes. Preferably, the time values are defined relativeto a zero time that is reset upon the receipt of a synchronizationsolidification energy generated when sensor 324 receives solidificationenergy, as also discussed previously. As mentioned earlier, in certainexamples, the zero time of a CPU counter is set at the leading edge 1104a of the synchronization sensor signal received by sensor 324 (FIG. 24).

Referring again to FIG. 16( a), each strip 304 _(j) corresponds to acontinuous region of solidification in the y-axis direction. However,depending on the object being built, this may not be the case. Certainof the strips 304 _(j) may be discontinuous, thereby definingunconnected sections along the y-axis for a given x-axis location. Incertain examples a solidification energy modulator (such as a laserdiode modulator in the case of a laser diode solidification energysource 90) is provided to selectively activate solidification energysource 90. In other examples, the solidification energy source 90remains constantly activated and the transparency of selected locationson a flexible mask is manipulated to allow solidification energy to passthrough to locations on the solidifiable material where solidificationis desired.

Referring to FIG. 21, a method of forming a three-dimensional objectusing a linear solidification device such as linear solidificationdevice 88 will now be described. In a preferred embodiment, the methodis embodied in a set of computer readable instructions on a computerreadable medium which can be executed by a computer processor.

In accordance with the embodiment, at the start of an object buildprocess, the x, y, and z positions are initialized to their startingpositions with their indices i, j, and k set to 0, i.e., x₀, y₀, and zo(step 1002). In step 1004 the z-axis index (k) is incremented by one andobject data for the first object slice at z(1) is read (step 1006). Thex-axis index (i) is then incremented by one in step 1008 and the y-axisindex (j) is incremented by 1 (steps 1008 and 1010). In step 1012, it isdetermined whether the x(i), y(j) location on the exposed surface of thesolidifiable material corresponds to a region of the object (i.e., alocation where solidification is desired based on the object data). Ifit does, solidification energy is provided to the location in step 1014.As explained previously, in certain implementations, step 1014 involvesselectively activating or deactivating solidification energy source 90.In other implementations, step 1014 involves selectively activatinglocation x(i), y(j) on a flexible mask to allow or preventsolidification energy to pass therethrough as the solidification energysource 90 remains continuously activated.

If the determination made at step 1012 indicates that no solidificationis to occur at the x(i), y(j) location on the surface of thesolidifiable material, control passes to step 1016 where it isdetermined whether the maximum y-axis position (i.e., the boundary ofthe build envelope in the y-axis direction) has been reached. If it hasnot been reached, the y-axis position index (j) is incremented by one,and control returns to step 1010. If the maximum y-axis position hasbeen reached, control transfers to step 1017 at which the y-axis index(j) is reset to 0. In step 1018, it is determined whether the maximumx-axis position (i.e., the boundary of the build envelope in the x-axisdirection) has been reached. If it has not, control transfers to step1008, where the x-axis index is incremented by one. If the maximumx-axis position has been reached, control transfers to step 1019 wherethe x-axis position index (i) is reset to 0. In certain examples, oncethe maximum x-axis position is reached, linear solidification device 88will travel in the opposite direction along the x-axis to solidifyanother slice of the object (bi-directional solidification), while inother examples, linear solidification device 88 will travel in theopposite direction without performing any solidification and will thensolidify the next slice (uni-directional solidification).

In step 1020, it is determined whether the final object data slice(z_(max)) has been reached. If it has, the method ends. If the finalslice has not been reached, control returns to step 1004, and the z-axisindex (k) is incremented by one so that the object data for anotherslice can be processed. The process repeats until the last slice hasbeen solidified.

Referring to FIGS. 22 and 23, another method of making athree-dimensional object using a linear solidification device such aslinear solidification device 88 (or the previously described variants ofdevice 88) is disclosed. In accordance with the method,three-dimensional object data is provided in step 1042. The data maytake a variety of forms such as CAD/CAM data, STL data or other datathat defines the shape of the object in three-dimensional space. In step1044, the data is sliced into a number of object layer data setsZ_(max), wherein each object layer data set corresponds to a particularlayer identified by a value of the layer index z that ranges in valuefrom 0 to Z_(max)−1. A graphical depiction of such slicing isexemplified by FIGS. 14 and 15. However, the actual slicing methodcomprises subdividing the three-dimensional object data along aspecified axis. In preferred examples, the axis along which thesubdividing is done corresponds to the build axis used in thesolidification process. Such data slicing techniques are known to thoseskilled in the art and generally involve identifying the intersection ofthree-dimensional object data (such as that defined by STL files) with aslicing plane defined by a build axis coordinate. The intersection willdefine the object contours for the slice.

In step 1046, M_(max) sets of linear scan data are created for eachobject layer data set. Each layer has its own value of M_(max), whichrefers to the total number of linear scans necessary to create a part.M_(max) will also be the maximum value of the computer memory indexvalue m for the layer because it represents the number of data storagelocations required to store the number of sets of data strings thatinclude object solidification data in the particular layer. In contrast,the entire build envelope 342 (FIG. 16( b)) may have a different maximumnumber of data strings (N_(max)) associated with it which represents themaximum possible number of linear scans that could be performed in thebuild envelope 342.

In step 1048, linear solidification device 88 is moved to a homeposition within the x, y plane which may be defined by the position ofan end of travel (EOT) sensor 346 (FIG. 16( b)). The home position ispreferably offset from the left-hand boundary 343 of the build envelope342 by a specified offset distance δ_(L). In certain examples, theleft-hand boundary 343 defines an x-axis origin point x₀. The offsetdistance δ_(L) may be specified as a motor movement parameter, such as anumber of motor steps, in which case the motor steps may be used todetermine when the linear solidification device has arrived at theleft-hand boundary 343.

In step 1050, motor 118 (FIGS. 5A and 5C) is activated to begin therotation of rotating energy deflector 92. The layer index (z) is thenset to zero to indicate that the object building process is about tobegin.

In step 1054 linear scan data for the layer corresponding to the currentvalue of the layer index (z) is loaded into the microcontroller unitthat is used operate the motor 118 and motor 76 and which is also usedto change the energization state of solidification energy source 90. Thelinear solidification device 88 is moved through the offset distanceδ(which will be δ_(L) or δ_(R) depending on the direction of x-axismovement) to reach the boundary 343 or 345 of the build envelope. Duringthe movement of linear solidification device 88 through the offsetdistance δ, the speed of linear solidification device 88 will preferablyreach a substantially constant value. In certain implementations, thelinear scan data is corrected to account for variations in the scanningspeed along the scanning axis, for example, by using equations 3(g)3(h), or 3(i) discussed above.

In step 1058, the value of the computer memory index m is set to zero.As explained previously, the computer memory index m is an index used tostore those sets of string data that have object solidification data inthem. In step 1060, the string index n is also set to zero.

In step 1061, the microcontroller reads the set of string data stored atthe current value of the computer memory index m. The set of string datapreferably includes a string index (n) value (see FIGS. 16( d), (f), and(g)), and in step 1062 the string index value provided in the set ofstring data for the current value of m is compared to the current valueof n. When the values are the same, it indicates that the solidificationwill occur at the x-axis position corresponding to the current stringindex value (n). When the values are not the same, it indicates that nosolidification will occur at the x-axis position corresponding to thecurrent string index value (n) so that no data need be read for thatstring.

When n=m in step 1062, control proceeds to step 1064. In step 1064 ascanning axis synchronization operation is performed prior to thebeginning of a line scanning operation. In one example, thesolidification energy source 90 is briefly pulsed to cause sensor 324(FIG. 5C) to generate a synchronization solidification energy sensorsignal, which indicates that the rotational position of rotating energydeflector 92 corresponds to the scanning-axis boundary of the buildenvelope. A timer (such as one programmed in software) is theninitialized (e.g., reset to zero) and started (step 1066). Themicrocontroller unit compares the timer value to the time values storedin the current set of string data (defined by the current value of thecomputer memory index m) to determine when to change the energizationstate of the solidification energy source 90 (step 1068). As discussedpreviously, in the example of FIG. 24 solidification energy source 90 ispulsed at a fixed lag time (Δ₁) relative to the motor 118 pulses used todrive rotating energy deflect 92 in order to perform synchronization.This synchronization pulse may occur at every string index (n) locationregardless of whether it is a location at which solidification willoccur. Alternatively, it may be performed only for those locations atwhich solidification will occur. As also described previously,solidification energy source 90 may be pulsed at a fixed time relativeto a CPU clock cycle instead of pulsing relative to the motor 118 pulsesto perform synchronization. In one example, a dynamic calibrationprocess of the type described previously is used in which the fixed timeis determined by dynamically adjusting the synchronizing energy pulsetiming relative to the CPU clock until sensor 324 indicates that theenergy pulse has been received. In such cases, a lag time Δ₁ relative tothe motor 118 pulses may be used as a starting point for the dynamicadjustment process.

The synchronization of the timer to a rotational position of rotatingenergy deflector 92 will further be described with reference to FIG. 24.Once the timer has been initialized, the solidification energy source 90is shut off until the current string of object data indicates that itshould be toggled on. Due to system delay, such as that involved inreceiving and processing synchronization sensor 324 signals andgenerating solidification energy source output signals, there may be adelay between the microcontroller's receipt of a rising edge 1104 a of asynchronization sensor 324 signal and shutting off the solidificationenergy source 90.

Sensor 324 (FIG. 5C) has a sensing length that may be traversed if thesolidification energy source is left on during the period in which it isin optical communication with mirror 332. As a beam of solidificationenergy traverses the mirror 332 from top to bottom, it will traverse thesensor 324 from bottom to top. However once solidification energyreaches the bottom of mirror 332, it will begin making contact with thesolidifiable material and solidifying it. Preferably, the solidificationenergy source 90 is deactivated before it would otherwise leave thesensing area of sensor 324 or the area of mirror 332 during asynchronization operation. Otherwise, solidification energy would makecontact with and solidify solidifiable resin before indicated by thestring data. In certain examples, the delay between the receipt of therising edge of the solidification sensor 324 input signal and thedeactivation of the solidification energy source 90 occurs within a lagtime Δ₂ that is no more than about 400 nanoseconds, preferably no morethan about 300 nanoseconds, more preferably no more than about 250nanoseconds, and still more preferably no more than about 200nanoseconds.

In preferred examples, the lag time Δ₂ is less than the time requiredfor solidification energy to traverse the entire sensing length ofsensor 324. The time required for solidification energy to traverse theentire length of sensor 324 may be calculated as follows:

time=(60 sec/min)(L _(S)/(L _(BE)×RPM×F))  (11)

-   -   wherein, L_(S)=linear distance of the sensor's sensing area;        -   L_(BE)=length of the build envelope in the scanning (y) axis            direction (i.e., the linear length of a full scan);        -   RPM=rotational speed of rotating energy deflector 92            (revolutions/minute); and        -   F=number of facets on rotating energy deflector 92.

Referring again to FIG. 22, when the line scanning operation iscomplete, the current value of the computer memory index m is comparedto the maximum index value (M_(max)−1) for the current layer (step1070). If m is less than M_(max)−1, the layer is not complete. In thatcase, control proceeds to step 1072 and the value of the computer memoryindex m is incremented by one. The set of string data for the new valueof m is read in step 1076. In step 1078, the value of the string index nis incremented by one and the rotating energy deflector 92 rotates tothe next facet 94(a)-(f). Control then returns to step 1062.

During step 1062 if the string index value n that is stored in the setof string data for the current value of m is not equal to the currentvalue of the string index value n, then no solidification will occur atthe x-axis position corresponding to the current value of the stringindex n. In that case, control transfers to step 1074 to determine ifthe last string N_(max)−1 has been reached. If it has been reached,control transfers to step 1080 (FIG. 23). Otherwise, control transfersto step 1078 at which the value of the string index n is againincremented by one. In step 1070 if the current value of the memoryindex m has reached the layer's maximum value M_(max)−1, no furthersolidification will occur in the current layer and control proceeds tostep 1074.

As mentioned previously, in certain examples a microcontroller is usedto control the operation of solidification energy source 90 based onobject shape data and also may regulate movement of the build platform(e.g., build platform 43 in FIGS. 1-2 or build platform 354 in FIG. 19).Many commercially available microcontrollers use what are known as“interrupts” to perform tasks such as USB communications, memoryrefreshing, and reading peripheral devices. During an interrupt, thecurrently executed task is stopped so that one of these other tasks maybe performed. However, in those examples that use string data comprisingtime values to represent a three-dimensional object, an interrupt willdisturb the synchronization of the CPU timer with the position of therotating energy deflector (or the tilt angle of a laser scanningmicromirror) and potentially distort the three-dimensional object. Insuch examples, it is preferable to cancel software and/or hardwareinterrupts during a line scanning operation. In one example, a programis stored in the microcontroller which causes the interrupts to bedisabled when the method of FIGS. 22-23 is between steps 1062 and 1082.The interrupts may then be enabled when the method reaches step 1084.

In step 1074, when the string index value n reaches the maximum stringindex value N_(max)−1, processing of the current layer is complete.Control then proceeds to step 1080 to move linear solidification device88 through the offset distance δ. If the linear solidification device 88processed the current layer by moving from left to right (when the buildenvelope 342 is viewed from above), the offset distance δ in step 1080will be δ_(R). Otherwise, it will be δ_(L).

In step 1082 the current value of the layer index (Z) is compared to themaximum layer index value (Z_(max)−1). If the last layer has beencompleted, the build terminates. Otherwise, the layer index isincremented by one (step 1084). In step 1086, a fresh amount ofunsolidified solidifiable material is provided between the previouslysolidified layer and the rigid or semi-rigid solidification substrate68. In the case of the systems shown in FIGS. 1-4 and 6-8, this could bedone, for example, by moving the build platform 43 downward into asupply of solidifiable material, which would produce a gap between thelast solidified layer and the substrate 68 into which fresh unsolidifiedmaterial can flow. In the case of systems such as those shown in FIGS.19 and 20, build platform 356 may be moved upward and fresh unsolidifiedsolidifiable material may be added to the basin film assembly 205 or oneof the other basin structures described previously.

In step 1088, linear scan data (i.e., sets of string data) correspondingto the new layer index value z is loaded into the microcontroller unit.In step 1090, the direction of travel of the linear solidificationdevice 88 along the x-axis direction is reversed. The linearsolidification device is moved through the applicable offset distanceδ_(L) or δ_(R) until the applicable build envelope boundary 343 or 345is reached. Control then returns to step 1058 in FIG. 22 to begin theprocess of solidifying the new layer.

Referring to FIGS. 17-18, an alternate embodiment of a system for makinga three-dimensional object is depicted. The system comprises asolidification substrate assembly 62 that is substantially similar tothe solidification substrate assembly 62 of FIGS. 7-13. In thisembodiment, however, linear solidification device 88 has been replacedwith linear solidification device 308. Although FIGS. 17-18 depictlinear solidification device 308 with the solidification substrateassembly 62 of FIGS. 7-13, it can also be used with the embodiment ofsolidification substrate assembly 62 shown and described with respect toFIGS. 3 and 7 which uses a curved, stationary, rigid or semi-rigidsolidification substrate 68. In FIGS. 17-18, film assembly 205 is againprovided (film 224 is not visible in FIGS. 17 and 18).

In the example of FIGS. 17-18, linear solidification device 308comprises an array of light projecting elements such an array of laserelements or light emitting diode elements 310 ₀-310 _(max). In onepreferred embodiment, each such element is “gray scalable,” such thatthe duration of each element's activation at a given location in the x,y plane is the same while each element projects an individuallycontrollable light intensity. Linear solidification device 308 maycomprise a single row of light projecting elements 310 ₀-310 _(max) andmay also include several rows of light projecting elements arranged inthe length (x-axis) direction of solidification substrate assembly 62.In certain examples, at least two rows of light projecting elements areprovided with the rows arranged in the length (x-axis) direction andtheir respective light projecting elements staggered in the width(y-axis) direction to create a zig-zag pattern.

Unlike linear solidification device 88, at a given position along thelength (x-axis) direction of solidification substrate assembly 62,linear solidification device 308 can selectively and simultaneouslysolidify locations along the entire y-axis build envelope direction.Each element of light emitting elements 310 ₀-310 _(max) projects acorresponding pixel of solidification energy onto a corresponding ylocation of the solidifiable material (the x-axis location depends onthe position of the linear solidification device 308 which is variable).Thus, energy is not “scanned” in the y-axis direction as with linearsolidification device 88. Further, object data may be provided asvolumetric pixels (“voxels”) each having its own x and y location andassociated solidification depth in the z-axis direction because the grayscaling feature allows for individually controllable intensities, whichin turn may provide individually controllable curing depths. Thegrayscale value represents a total exposure for the pixel (where totalexposure for the pixel is expressed as follows:

Total Exposure=∫I dt  (12)

-   -   wherein, I is the intensity of the supplied solidification        energy (e.g., Watts/pixel) and the integration is performed over        the exposure time period, Δt.

In certain examples, the grayscale output value may be used to controlthe linear solidification device's output to provide full intensity, nooutput, or variations in between. In processes using a fixed exposuretime per pixel, the linear solidification deice may reduce the amount ofelectromagnetic radiation (e.g., intensity, I) that the solidifiablematerial is exposed to for each pixel for the specified exposure time.

In one preferred embodiment, linear solidification device 308 movescontinuously in the x-axis direction as solidification energy isprovided as a generally, or preferably substantially, linear pattern inthe y-axis direction. Depending on the profile of the object beingbuilt, the solidification energy pattern defined by linearsolidification device 308 may change as different locations on thelength (x-axis) direction are reached.

The use of gray scalable light emitting elements 310 ₀-310 _(max) allowsfor the use of voxelized object data to represent the three-dimensionalobject being built. Voxel data may be considered a collection or set ofdata that represents volumetric pixels. The voxel data may be organizedinto a voxelized bitmap pattern that includes a grayscale value for eachpixel and/or an exposure time. The voxelized bitmap may be considered anorganized collection of individual voxels, each voxel having its owndepth that is independent of the other voxels. Although the voxels maybe organized into a bitmap, each voxel is generally treated individuallyand has its own curing depth (which can be determined by the exposuretime and/or intensity value assigned to each voxel) to determine eachvoxel's geometry independent of any other voxel data. The object may beformed using the voxel data where each voxel may be created in thesolidifiable material by exposing the exposed surface of thesolidifiable material to obtain a particular depth of cure (typicallydetermined by the grayscale value and/or exposure time) and therebycreate the three-dimensional voxel in the solidifiable material. Eachvoxel may be generated individually, in a group or subset (e.g., morethan one voxel), or as a whole of the voxel data (e.g., all voxels atonce).

When using a voxelized construction process, each voxel may have its ownthickness (e.g., depth of solidification) which is controlled by thegrayscale value. Nevertheless, sliced object data such as that describedwith respect to FIG. 15 may be used to drive the operation of linearlight emitting device arrays comprising linear solidification device308. A control unit (not shown) receives object data in the desiredformat and directs the activation of each light projecting element 310₀-310 _(max).

While the gray-scaled intensity may be expressed as an integer number ona reference scale (e.g., 0 . . . 255), the intensity value may also becompensated or adjusted before being sent to the linear solidificationdevice 308, or may be compensated or adjusted at the linearsolidification device 308, or both. For example, where the solidifiablematerial has a minimum intensity threshold that is required forpolymerization or partial-polymerization, the “off” or zero (0) valueintensity (e.g., brightness and/or “on” time) may be determined based onthe minimum intensity threshold specific to the particularsolidification material. A zero value for intensity does not necessarilyimply that the energy supplied by linear solidification device 308 isactually zero. In a typical case, a low level of brightness maycorrespond to a zero (0) intensity.

Intensity ranges of 0 to 255 are convenient for examples when an 8-bitsystem is used to determine intensity. However, systems having more orless resolution for intensity may be used. Examples may include a 4 bitsystem or a 16 bit system. Further, the exposure time of theelectromagnetic radiation may have a wide range, for example, 1millisecond to 100 seconds. Note that the time range is merely anexample and is not limiting as the “on time” for the electromagneticradiation may be dependent on other variables such as the minimumswitching time of the pattern generator, the intensity of theelectromagnetic radiation, the solidifiable material's minimum effectivetime and radiation intensity for solidification, the speed of movementof build platform 43, and other factors.

The process of solidifying solidifiable material with linearsolidification device 308 or linear solidification device 88 may occurin discrete steps with the formation of discrete object layers orwithout the use of a layered formation process. In particular, acontinuous build process may be used in which build platform 43 movesduring the entire build process. Even with continuous build processes,due to possible electromagnetic radiation interruptions, some slightinterface layer formation could still occur. Nevertheless, suchinterface formation can be minimized or even totally eliminated.

When continuous build processes are used, structural “steps” thatsometimes appear in the outer contours of objects built with layerprocesses can be minimized. In continuous build processes, thethree-dimensional object is allowed to solidify or grow in the mainbuilding direction (typically in the Z-direction) without interruptingthe supply of electromagnetic radiation during an irradiation phase andoptionally during the whole building process. The correspondingcontinuous growth of solidifiable material in the main building (Z)direction during an irradiation phase may thus proceed at an extentexceeding a usual hardening depth typical of conventional layer-wisesolidification and which is predetermined by the used supply ofelectromagnetic radiation and/or by a used polymerizable material.

By the layer-independent continuous operation, it is even possible tospecifically influence and to control a current hardening depth of thesolidifiable material. An adjustment of the speed of the support platesupporting the object to be generated moving away from the buildingsurface, and an adjustment of the irradiation intensity of pixels (greyvalue or color value), respectively alone or in combination, areparticular means for controlling the hardening depth.

In using the systems for making a three-dimensional object describedherein, it is desirable to ensure that sufficient solidifiable materialis provided over the most recently formed section of thethree-dimensional object so that the desired layer thickness isobtained. It is also generally desirable to ensure that while thesolidifiable material is being solidified, the region receivingsolidification energy is free from surface disturbances or otherdisruptions to better conform the solid object to the object data thatdefines it. In certain examples, such as in the system 40 of FIGS. 1-2or the modified versions thereof described previously, it is necessaryto temporarily separate the build platform from the exposed surface ofthe solidifiable material by a distance greater than the next layerthickness and then return the build platform to a distance from theexposed surface that is equal to the next layer thickness to allowsolidifiable material to flow over the most recently solidified sectionof the three-dimensional object. In downward build processes, this issometimes referred to as “deep dipping.” However, such processes mayincrease object build times because of the waiting time required until anew layer of solidifiable material is present.

Referring to FIGS. 33 and 34, a portion of a system 440 for making athree-dimensional object is depicted. System 440 comprises a work tableassembly 442 that includes a work table 444. A reservoir of solidifiablematerial would be located underneath the work table 444 along with abuild platform, but neither is shown in the figures. Unlike the previoussystems, a solidification substrate assembly is not provided with system440. However, system 440 includes a blade which is preferably a vacuumblade 450 as shown in FIGS. 33 and 34. Vacuum blade 450 is an elongatedgenerally rectangular structure with a height (in the z-axis direction)that is at least twice, preferably three times, and even more preferablyfour times its width in the x-axis direction. Referring to FIG. 35,vacuum blade 450 includes first and second surfaces 451 and 453 havinglengths that extend along the scanning (y) axis direction and which arespaced apart from one another along the x-axis direction. Surfaces 451and 453 lie in the y-z plane. Upper surface 459 lies in the x-y planeand connects first and second surfaces 451 and 453. The spacing betweensurfaces 451 and 453 creates a hollow interior 458 that may receive avolume of solidifiable material. First and second surfaces 451 and 453are connected to respective projecting edges 452 and 454. Projectingedge 452 is connected to first surface 451 and projects away from bothfirst surface 451 and second surface 453 along a direction that has bothx-axis and z-axis components. Projecting edge 454 is connected to secondsurface 453 and projects away from both first surface 451 and secondsurface 453 along a direction that has both x-axis and z-axiscomponents. The projecting edges 452 and 454 are spaced apart from oneanother along the x-axis and face away from one another along thex-axis. The projecting edges 452 and 454 are also spaced apart fromupper surface 459 in a direction along the z-axis.

The hollow interior 458 of vacuum blade 450 is preferably in fluidcommunication with a vacuum pump or a compressor that is operable tomaintain the hollow interior at a pressure that is below atmosphericpressure (typically 14.7 psia at sea level). The maintenance of asubatmospheric pressure causes a level (shown as having a height h inFIG. 35) of solidifiable material to develop within the hollow interiorof vacuum blade 450 relative to the exposed surface of the solidifiablematerial which remains at atmospheric pressure. The level ofsolidifiable material may be determined by well known calculations thatrelate the level of vacuum to the hydrostatic head h created by thelevel in the vacuum blade interior 458. A pressure regulator ispreferably provided to maintain a desired level of vacuum within hollowinterior 458. A shown in FIG. 35, a meniscus m is created between theprojecting edges 452 and 454 and the exposed surface of the solidifiablematerial. The meniscus m seals the bottom of vacuum blade 450.

As discussed previously, in the systems described herein, the buildplatform (e.g., build platform 43 in FIGS. 1-2) is pulled away from theexposed surface of solidifiable material once the linear solidificationdevice 88 completes its traversal of the build envelope in the x-axisdirection. This temporarily results in the most recently solidifiedsurface of the three-dimensional object being exposed (i.e., not coveredwith solidifiable material) at a build (z) axis position that is offsetfrom the exposed surface of solidifiable material elsewhere in the buildenvelope. Viscous solidifiable materials may take some time to flow overthe solidified object so that a new layer may be created. However, whenvacuum blade 450 encounters the most recently formed object surface,fluid from the interior space 458 of the vacuum blade 450 is depositedover the most recently formed object surface to create an even, newlayer of unsolidified, solidifiable material.

Without wishing to be bound by any theory, it is believed that when thevacuum blade 450 encounters the most recently formed surface of theobject, there is a sudden change in hydrostatic head in the interiorspace 458 of vacuum blade 450. If the interior space 458 has acontrolled vacuum pressure, the level h drops in order to maintainhydrostatic equilibrium. Thus, solidifiable material from the interior458 is deposited onto the last formed object surface to restoreequilibrium. It is further preferred that a level compensator of thetype known in the art is provided to maintain the exposed surfaced ofthe solidifiable material at a substantially constant level as the buildplatform moves and solidifiable material is solidified. Thus, in certainpreferred examples, the height h of solidifiable material within vacuumblade interior space 458 is at least as great as the maximum desiredlayer thickness to ensure that sufficient liquid is available fordeposit over the last formed layer.

As shown in FIG. 35, in certain examples the lower surface of the vacuumblade 450 is spaced apart from the exposed working surface of thesolidifiable material by an exposed surface spacing and is also spacedapart from the last formed layer of three-dimensional object 460 by anobject spacing. In preferred examples, the object spacing is greaterthan the exposed surface spacing. The exposed surface spacing ispreferably greater than zero to avoid disturbing the exposed surface asthe vacuum blade 450 moves in the x-axis direction. At the same time, orin other cases, the exposed surface spacing is preferably no greaterthan that which allows the formation of a reliable meniscus m to ensurethat the vacuum level within interior space 458 of vacuum blade 450 isnot disrupted. Preferred exposed surface spacings between the lowersurface of vacuum blade 450 and the exposed surface of the solidifiablematerial are no greater than 500 microns, even more preferably nogreater than 200 microns, and still more preferably no greater than 100microns. Preferred object spacings between the lower surface of vacuumblade 450 and the last solidified (upper) surface of object 460 are atleast about one layer thickness, preferably at least about 1.2 layerthicknesses, and more preferably at least about 1.5 layer thicknesses.At the same time or in other examples, preferred object spacings betweenthe lower surface of vacuum blade 450 and the last solidified (upper)surface of object 460 are no greater than about 3 layer thicknesses,more preferably no greater than about 2.5 layer thicknesses, and stillmore preferably no greater than about 2 layer thicknesses.

As best seen in FIG. 34, vacuum blade 450 and linear solidificationdevice 88 are operatively connected to one another so that when linearsolidification device 88 moves in the x-axis direction, the vacuum blade450 also moves in the x-axis direction. In preferred examples, there isa substantially fixed x-axis offset (shown as Δx in FIG. 34) that ismaintained between the substantially linear opening 100 in the linearsolidification device housing 96 and vacuum blade 450 as the linearsolidification device and vacuum blade 450 travel in the x-axisdirection. The x-axis offset minimizes the likelihood thatsolidification energy exiting from the substantially linear opening 100will impinge on vacuum blade 450 instead of upon the solidifiablematerial. In certain known three-dimensional object manufacturingsystems, vacuum blades are used to apply and smooth a solidifiablematerial across an entire build envelope prior to the delivery ofsolidification energy to any portion of the build envelope for aparticular object cross-section. In such systems, there is often a “waittime” before the exposed surface of the solidifiable material issufficiently smooth such that solidification energy may be delivered.However, in the system of FIGS. 33-36, solidification energy may bedelivered quickly after vacuum blade 450 traverses a particular x-axislocation because solidification energy is only delivered to linearsections extending along the scanning (y) axis and which are separatedfrom the vacuum blade by the x-axis offset (Δx). Thus, it is unnecessaryto wait until the entire exposed surface of solidifiable material issmooth because that entire area will not be solidified at once, as inthe case of DLP or spatial light modulator systems. Nor will the exposedsurface be subject to the delivery of solidification energy innon-linear patterns from point sources, as in the case of laser systemsthat make use of dual galvo mirrors.

Referring again to FIG. 33, linear solidification device 88 is connectedto a cross-bar 456 by a suitable mechanical connection device. Cross-bar456 is connected to linear bearings 110 a and 110 b (not visible infigures) at each of its ends. Each linear bearing 110 a and 110 bengages a respective linear slide 112 a and 112 b. Brackets 114 a and114 b (not visible) connect cross bar 456 to respective timing belts 86a and 86 b (not visible). Each timing belt 86 a and 86 b is connected toa respective pulley 82 a and 82 b and a respective end 80 a and 80 b ofmotor shaft 78. Brackets 83 a and 83 b are also provided to mountpulleys 82 a and 82 b. When motor 76 is energized, shaft 78 rotates,causing timing belts 86 a and 86 b to circulate. The circulation of thetiming belts 86 a and 86 b causes the cross-bar 456 to move in thex-axis direction as the linear bearings 110 a and 110 b slidingly engagetheir respective linear slides 112 a and 112 b.

Vacuum blade 450 is also connected to cross-bar 456 via vacuum bladesupports 455 a (not visible) and 455 b. The vacuum blade 450 is spacedapart from cross-bar 456 in the z-axis direction and away from thebottom of the linear solidification device housing 96 in the z-axisdirection. Because both the linear solidification device 88 and thevacuum blade 450 are connected to cross-bar 456, they each moveconcurrently with one another in the x-axis direction and maintain thex-axis offset, Δx. In the example of FIG. 33, solidification energy isonly supplied when the vacuum blade 450 precedes the linearsolidification device 88, which occurs when the linear solidificationdevice moves away from motor shaft 78 in the x-axis direction. Putdifferently, solidification energy is only supplied when the linearsolidification device moves in the same direction as the x-axis offset.Thus, if the x-offset (as measured by subtracting the x-axis position ofthe linear solidification device 88 from the x-axis position of thevacuum blade 450) is in the positive x-axis direction, solidificationoccurs when the linear solidification device moves in the positivex-axis direction. This ensures that the vacuum blade 450 provides anynecessary solidifiable material to the x-axis locations to be solidifiedbefore solidification energy is delivered to those locations. In theexample of FIG. 33, once the linear solidification device 88 and vacuumblade 450 reach the end of travel in the direction away from motor shaft78, they are quickly returned to the starting location proximate motorshaft 78 without delivering solidification energy during the returntrip. Thus, only unidirectional solidification occurs along the x-axis.However, in certain other examples, a second vacuum blade may bepositioned on the side of linear solidification device 88 oppositevacuum blade 450 (i.e., so the two vacuum blades are spaced apart alongthe x-axis). Each vacuum blade would preferably have a fixed x-axisoffset relative to the linear opening 100 in the linear solidificationdevice housing 96. This configuration would allow for bi-directionalsolidification in the x-axis direction by ensuring that a vacuum bladecontacts any linear section of solidifiable material to be solidifiedbefore solidification energy is delivered to the linear section.

In some cases involving large build envelopes, a single linearsolidification device 88 may be incapable of delivering a sufficientsolidification energy density to solidify a three-dimensional object ina desired amount of time. As the build envelope size increases in thescanning (y) axis direction, the scanning speed will have to increase inorder to maintain the same overall build speed. However, as the scanningspeed increases, each portion of the solidifiable material that receivessolidification energy during a given scan is exposed for less time,resulting in a decreased solidification energy. As a result, it may bedifficult or impossible in some cases to achieve the desiredsolidification depth in the build (z) axis direction withoutsignificantly increasing the overall build time. As a result, in somecases, especially those involving large build envelopes, it is desirableto use multiple linear solidification devices arranged along thescanning (y) axis direction. An example of a portion of system 440 formaking a three dimensional object using multiples linear solidificationdevices is depicted in FIG. 36.

FIG. 36 is a perspective view looking upward from underneath a worktable assembly 442 comprising work table 444. Linear solidificationdevices 88 a and 88 b are spaced apart from one another in the scanning(y) axis direction and are each connected to a cross-bar 456 that isconfigured as described with respect to FIG. 33. The linearsolidification devices 88 a and 88 b are each connected to a singlevacuum blade 450, which is also configured as shown in FIGS. 33-35. Thedrive components (motor 76, shaft 78, linear bearings 110 a and 110 b,linear slides 112 a and 112 b, etc.) are the same in FIG. 36 as in FIGS.33-34.

While the linear solidification devices 88 a and 88 b are spaced apartfrom one another along the scanning (y) axis direction, they arepreferably configured to deliver solidification energy to an overlapregion along the scanning axis to ensure that there are no gaps ordeadspaces along the scanning (y) axis that cannot be exposed tosolidification energy. As best seen in FIGS. 5C and 5D, solidificationenergy may be delivered from each device 88 a and 88 b at an anglerelative to the x-y plane so that the highest position that device 88 bcan deliver energy to along the y-axis is higher than the lowestposition that the device 88 a can deliver energy to along the y-axis. Inone example, device 88 b may be capable of delivering solidificationenergy from the beginning of the build envelope (in the scanning axisdirection) to a maximum position 20 mm away from the beginning of thebuild envelope, while device 88 a may be capable of deliveringsolidification energy from a minimum position 18 mm away from thebeginning of the build envelope to the end of the build envelope (in thescanning axis direction), yielding a 2 mm overlap region. The desireddegree of overlap may be achieved by appropriately selecting the spacingbetween the linear solidification devices 88 a and 88 b, as well asappropriate linear opening 100 a and 100 b lengths for each device, andensuring that the various lenses and other optical components areappropriately selected.

As indicated above, in many cases, the linear solidification devices 88a and 88 b will solidify a common overlap region to ensure continuity ofsolidification. To prevent gaps from occurring the object data stringsused to guide the solidification process may be modified for use withmultiple linear solidification devices. An example of such modified datais provided in FIG. 30. FIG. 30 is based on the data strings of FIG. 16(d) which corresponds to the object cross-section depicted in FIG. 16(c). The object cross-section of FIG. 16( c) requires solidification byeach linear solidification device 88 a and 88 b in an overlap regionalong the y-axis because it includes continuous object sections thatcross the scanning axis boundary that divides the scanning axis regionsserved by the linear solidification devices 88 a and 88 b. Thus, eachdata string in FIG. 16( d) is subdivided into two data strings for eachof the devices 88 a and 88 b. In this example, device no. 1 mentioned inFIG. 30 would correspond to linear solidification device 88 b in FIG.36, and device no. 2 would correspond to linear solidification device 88a. For string (n) index 20, the solidification energy source in linearsolidification device 88 b is activated at 22000 CPU ticks anddeactivated at 34000 CPU ticks. The solidification energy source inlinear solidification device 88 a is activated at 33000 CPU ticks (i.e.,before the solidification energy source in linear solidification device88 b is deactivated) and deactivated at 44000 CPU ticks. Thus, there isa 1000 CPU tick overlap that defines a time period during which thesolidification energy sources in both linear solidification device 88 aand 88 b will be activated.

FIGS. 31 and 32 are based on FIGS. 16( f) and 16(g), and each providedata strings for two linear solidification devices. In this example, thestring data for device no. 1 in FIG. 31 is used for linearsolidification device 88 b in FIG. 36, and the string data for deviceno. 2 in FIG. 32 is used for linear solidification device 88 a in FIG.36. The object for which the data strings are provided is the objectdepicted in FIG. 16( e). This object has some regions where continuoussolidification is required across the scanning axis border of thescanning axis regions served by both linear solidification devices 88 aand 88 b and other regions where there is a gap between the regions.FIG. 31 depicts the string data for “even” object layers, and FIG. 32depicts the data strings for “odd” object layers.

Referring to FIG. 31, string index n=20 describes data strings for areaswhere the object crosses the scanning axis boundaries of linearsolidification devices 88 a and 88 b. Thus, linear solidification device88 b is activated at 8500 CPU ticks and deactivated at 32000 CPU ticks,while linear solidification device 88 a is activated at 31000 CPU ticksand deactivated at 54000 CPU ticks, thereby providing an overlapinterval of 1000 CPU ticks during which the solidification energysources for both linear solidification devices 88 a and 88 b are active.In contrast, data strings for string index n=30, 59, and 60 describeregions where there is a scanning axis gap in the object, and theregions do not cross the scanning axis boundaries of the linearsolidification devices 88 a and 88 b. Thus, the solidification energysource in linear solidification device 88 b is deactivated prior to theactivation of linear solidification device 88 a, as reflected in the gapbetween the 24750 CPU tick value for device no. 1 in string index n=30and the 41250 CPU tick value for device no. 2 at string index n=30. FIG.32 shows the transformation of the data in FIG. 31 to allow an odd layerto be solidified in the same pattern as the even layer without the needfor separately storing the object data for the odd layer, using the sametechnique described to generate the data of FIG. 16( g) based on thedata of FIG. 16( f).

The present invention has been described with reference to certainexemplary embodiments thereof. However, it will be readily apparent tothose skilled in the art that it is possible to embody the invention inspecific forms other than those of the exemplary embodiments describedabove. This may be done without departing from the spirit of theinvention. The exemplary embodiments are merely illustrative and shouldnot be considered restrictive in any way. The scope of the invention isdefined by the appended claims and their equivalents, rather than by thepreceding description.

What is claimed is:
 1. An apparatus for making a three-dimensionalobject from a solidifiable material, comprising: a linear solidificationdevice that is movable along a first axis and operable to progressivelysolidify the solidifiable material along a second axis while movingalong the first axis; and a vacuum blade having a length extending alongthe second axis and which is operatively connected to the linearsolidification device such that when the linear solidification devicemoves along the first axis, the vacuum blade moves along the first axis.2. The apparatus of claim 1, wherein the vacuum blade comprises firstand second surfaces spaced apart along the first axis which define aninterior space between the first and second surfaces, and the apparatusfurther comprises a vacuum pump in fluid communication with the interiorspace and operable to maintain the interior space below atmosphericpressure.
 3. The apparatus of claim 2, wherein the vacuum blade furthercomprises first and second projecting edges, the first projecting edgeis connected to the first surface and projects away from the firstsurface and the second surface, and the second projecting edge isconnected to the second surface and projects away from the secondsurface and the first surface, and the first and second projecting edgesare spaced apart from one another along the first axis.
 4. The apparatusof claim 1, wherein the linear solidification device and the vacuumblade are spaced apart along a third axis.
 5. The apparatus of claim 1,wherein the vacuum blade is spaced apart from the linear solidificationdevice in a first direction along the first axis.
 6. The apparatus ofclaim 1, wherein the solidifiable material comprises a photohardenableresin, and the apparatus further comprises a container that contains thephotohardenable resin.
 7. The apparatus of claim 1, wherein thesolidifiable material has an exposed surface, the vacuum blade has alower surface, and the lower surface of the vacuum blade is spaced apartfrom the exposed surface along a third axis.
 8. The apparatus of claim1, wherein the linear solidification device is movable in a firstdirection along the first axis and in a second direction along the firstaxis, the linear solidification is operable to progressively solidifythe solidifiable material while moving in the first direction along thefirst axis and is not operable to progressively solidify thesolidifiable material while moving in the second direction along thefirst axis, and the vacuum blade is spaced from the linearsolidification device in the first direction along the first axis. 9.The apparatus of claim 1, wherein the linear solidification devicecomprises a first linear solidification device, and the apparatusfurther comprises a second linear solidification device positionedadjacent the first linear solidification device along the second axis.10. The apparatus of claim 1, wherein the linear solidification devicecomprises a selectively activatable laser diode in optical communicationwith a rotating polygonal mirror.
 11. A method of forming athree-dimensional object, comprising: traversing a vacuum blade along afirst axis and in contact with a solidifiable material; and traversing alinear solidification device along the first axis and progressivelysupplying solidification energy from the linear solidification device tothe solidifiable material along a second axis as the linearsolidification device is traversed along the first axis.
 12. The methodof claim 11, further comprising maintaining an offset between the vacuumblade and the linear solidification device in a first direction alongthe first axis.
 13. The method of claim 11, wherein the step oftraversing the linear solidification device along the first axiscomprises traversing the linear solidification device in a firstdirection along the first axis and progressively supplyingsolidification energy from the linear solidification device to thesolidifiable material along the second axis as the linear solidificationdevice is traversed in the first direction along the first axis, and themethod further comprises traversing the linear solidification device ina second direction along the first axis without supplying solidificationenergy from the linear solidification device to the solidifiablematerial.
 14. The method of claim 13, wherein during the step oftraversing the linear solidification device in a second direction alongthe first axis the vacuum blade is offset from the linear solidificationdevice in the first direction along the first axis.
 15. The method ofclaim 11, wherein the vacuum blade has a length extending along thesecond axis and first and second surfaces spaced apart along the firstaxis which define an interior space between the first and secondsurfaces, and the method further comprises maintaining the interiorspace at a sub-atmospheric pressure.
 16. The method of claim 15, whereinthe solidifiable material has an exposed surface, the method furthercomprises maintaining a volume of the solidifiable material in theinterior space, and the volume of the solidifiable material has a levelabove the exposed surface.
 17. The method of claim 11, wherein thesolidifiable material has an exposed surface, the vacuum blade has abottom surface, and the step of traversing the vacuum blade along thefirst axis comprises maintaining the bottom vacuum blade surface spacedapart from the exposed surface along a third axis.
 18. The method ofclaim 11, wherein the linear solidification device is a first linearsolidification device, and the method comprises providing a secondlinear solidification device positioned adjacent the first linearsolidification device along the second axis, and the method furthercomprises progressively supplying solidification energy to thesolidifiable material from the second linear solidification device alongthe second axis as the second linear solidification device is traversedalong the first axis.
 19. The method of claim 18, wherein the step ofprogressively supplying solidification energy to the solidifiablematerial from the first linear solidification device to the solidifiablematerial along the second axis comprises supplying solidification energyfrom the first linear solidification device to an overlap region of thesolidifiable material along the second axis, and the step ofprogressively supplying solidification energy to the solidifiablematerial from the second linear solidification device to thesolidifiable material along the second axis comprises supplyingsolidification energy from the second linear solidification device tothe overlap region of the solidifiable material along the second axis.20. The method of claim 11, wherein the step of progressively supplyingsolidification energy from the linear solidification device to thesolidifiable material along a second axis as the linear solidificationdevice is traversed along the first axis comprises selectivelyactivating a laser diode in optical communication with a rotatingpolygonal mirror as the linear solidification device is traversed alongthe first axis.